現代編程索源及其普及推廣的發展
編程,在一般老師和學生的認知,直覺上是現代科技事物。有點熟悉,但又有點距離。若果我們把它叫做記事、密碼、編序,又可以將理解空間,貫串到遠古結繩記事的代碼、中古軍事密碼的圖式,以至近代計算機驅動程式的編序設計上。這與現代編程學習(Coding)強調基於生活感受,應用圖像、代碼,以一種運算/換算思維,讓計算機去驅動周邊配件或遙控應用;從靜態到動態,從數學到物理,反覆試錯,去解決預設「任務」的本旨,完全和人類在後設認知(Metacognition)的學習歷史一脈相承。
現在學編程能夠讓青少年,甚至幼兒,走出複雜的計算機運算程式設計(Programming)的障礙,可以在中小幼課堂,輕鬆直接按常理邏輯,圖組運算關係,去教計算機演繹可視化圖像、連動周邊設備,甚至通過互聯網進行硬件搖控,這要多得近代幾位努力將複雜事情簡單化,不斷反覆研發圖像運算系統,讓兒童享受創想樂趣的編程教父:西摩·帕柏特(Seymour Papert)、馬文·明斯基(Marvin Minsky)、辛西婭·所羅門(Cynthia Solomon)、艾倫·凱(Alan Kay)、米切爾·雷斯尼克(Mitchel Resnick)等人的貢獻。
出生南非的劍橋數學博士帕柏特,為貫徹後來從瑞士心理學大師皮亞傑(Jean Piaget)學習的建構主義理論,1966年開始,和麻省理工學院媒體實驗室(Media Lab)團隊,及後來加入的所羅門,共同開發了第一款基於LISP語言的兒童程式設計語言——LOGO,並且可以利用視覺輸出(電腦圖形)和自動化設備(機器人)來學習編程。可以通過編寫LOGO語言命令,控制螢幕上的遊標或者一款被稱為「海龜(Turtle)」的機器人畫出圖形。1980年,帕柏特把自己的思想和經驗寫成了一本書——Mindstorms,Children, Computer, and Powerful Ideas,這本書的中文名被譯作《因計算而強大》。他提出『是孩子在給電腦編程,在這一過程中,孩子能同時收穫對最現代和最強大技術的掌控感,以及與科學、數學和構建知識模型方面最底層概念的緊密連接。』到1985年,LOGO語言已經進入全美國40%的學校,成為小學和中學事實上的標準編程語言。
後來,一位帕柏特的追隨者艾倫·凱(Alan Kay),得到銷售影印機發家的施樂(Xerox)公司資助,在史丹福大學附近成立帕羅奧圖研究中心(Palo Alto Reach Center, PARC),研發基於早前一款Dynabook概念的便攜電腦,創造出一個全新的視覺化代碼開發環境,促成第一個具有現代圖形使用者介面——Smalltalk的誕生。1973年帕羅奧圖研究中心發明了自己的電腦——Alto,為個人可擕式電腦設定了一個願景——通過電腦觸達全世界的知識。
而帕柏特開創的事業,在他2016年去世後依然欣欣向榮,全靠他的「關門弟子」米切爾·雷斯尼克。2007年他在繼承Logo初衷的基礎上,主導開發了Scratch。名字來源於DJ打碟時擺弄碟片的情景:來回調試唱片,用充滿創意的方式把不同的音樂片段混合到一起。在Scratch程式設計環境中,用戶也會像DJ那樣把圖片、動畫、照片、音樂、聲音等媒體形態拼搭在程式內。在Scratch編程環境裏,用戶只需像拼搭積木那樣拖動程式語句模組,就可以創作自己的編程作品。而很多新奇的教具,如Micro:Bit,Makey Makey等都與Media Lab有千絲萬縷的聯繫。目前,Scratch平台上的註冊用戶約5000萬,遍布全球超過150多個國家,平台被翻譯成超過50種語言。雷斯尼克後來又利積木拼搭原理,成立團隊和樂高合作開發可編程的樂高磚(Programmable Brick)。他給項目小組起了一個名字,就是:「終身幼稚園(Life-long Kindergarten)」,研究報告專著的封面,也用上樂高積木方塊圖、色。
編程課程發展及培訓市場偏差
關於編程學習,因為有一定技術含量和硬體操作,而成本門檻不算太高,在未出現STEM熱潮時,校內、校外教育機構都一直存在,不算熱門。但最近發展愈來愈火,一片藍海,大少企業都爭相入局,主要因為有教育政策支持和專家倡導。在進入5G應用時代和人工智能研究爆發的社會情境,各國教育規劃開始重新重視編程這種科技創新的基本能力學習,紛紛進行課程修訂,在各個學齡階段加入不同形式的編程學習,甚至提出將運算思維(Computational Thinking)作為核心素養及升學考核標準。
美國注重從小培養孩子的編程能力,前總統奧巴馬在任期間,親自上陣宣傳編程教育,撥款40億美金普及少兒編程,邀請比爾蓋茨、朱克伯格、Twitter創始人等大咖錄製節目宣傳編程學習。在2012年12月推介名為「編程1小時」的全國學生編程推廣活動,鼓勵學生「不要只買電子遊戲,製作一款;不要只下載最新的App,幫忙設計一個;不要只玩智慧手機,為它寫程式!」
俄羅斯也早在2009年率先將編程相關課程引入初等教育,引導孩子們開始學習編程演算法、收集和分析各種資料。為了讓孩子們能夠更積極地參與未來數字時代的競爭,2013年英國政府開始大力改革基礎教育階段課程安排,加強學生們對編程語言的學習和演算法的理解。歐盟各國在2014年陸續將編程納入中小學課程大綱,且各具特色。2015年澳大利亞把編程融入《數碼技術》課程,在三大年齡段中開展教學。
日本去年公布在2020年將編程引入全國小學的必修課,並鼓勵融入不同學科;南韓、新加坡一樣各有大計。日本所推行的「程式編程教育」並不是「寫代碼」,也不會硬性要求學校新開一門編程課,甚至不一定需要使用電腦。文部科學省將其定義為培養「編程思維」,理解為一種「解決問題型思維」,是「理解問題——找出路徑」的思維過程。將技術教育作為國家目標之一的芬蘭,更是高度重視對學生的編程教育。和日本一樣認為編程課要做的絕不僅僅是對學生的技術訓練,學校更應該關注如何讓學生理解和掌握編程背後的思想,學生所獲得的就將是電腦編程的本質原理和可遷移的思維方式,而這種思維方式也將能夠被用來開展更多的研究和解決生活中更為複雜的問題。芬蘭也強調不一定需要使用電腦教編程,例如一節在判斷奇偶數的數學課,可以用遊戲教學生體會電腦編程」的「IF語句。這種課程設計理念正正符合筆者一直推廣「低成本、低技術配置」的STEM+ 教育課程模式。
香港中小學的編程教育還不算落後。2014年已有商業集團舉辦「Go Code 程式小先鋒」計劃,免費教授基層家庭兒童編寫程式,為千多名小四至小六學童提供學習機會。2016年底由賽馬會慈善信託基金撥款2億1600萬元,連同教育大學、城市大學及美國麻省理工學院(MIT),推出「賽馬會運算思維教育(Coo / Think)」,除教授學生編程外,亦培養他們的解難能力及創造力。第一期有32所小學入選先導學校,會添置課室設備及研發實證為本教材,及為教師安排相應培訓。2018也有創科先導小學自資300萬,將常識科結合STEM學編程訓練解難。同年又有本地初創公司研發一套程式語言和編程平台,協助小學生由拖拉方塊編程學起,日後可「順利過渡」學習編寫程式碼。也有不小中小學紛紛擴展編程課節,部分更有不俗學習表現。例如,有小學生用Micro:Bit連接一個手臂,設計泡茶機械人,編寫程式優化生活素質。三名小學生創作「長者走失警報器」寫程式奪得「運算思維比賽」冠軍。有兩位中四學生設計名為「芯連心」的裝置,把手指放在指模閱讀器上能測試出人的心電神經狀態的身體檢查器,獲得全國青少年科技創新大賽銅獎。另外有中、小學校在「國際傑出電子教學獎」分別獲小學及中學「STEM與編程」組別金獎等。
至於內地編程教育,依據一份《2017開發者技能報告》,中國大陸青少年編程教育滲透率為0.96%,遠低於排名最高的美國(44.8%),第二的澳大利亞(10.3%)和第三的英國(9.3%),但因人口基數大,人才總量也不能少看。內地2017年出臺的《新一代人工智能發展規劃》中,明確指出要在中小學設置AI 相關課程,逐步推廣編程教育,鼓勵社會力量參與編程教學軟件、遊戲的開發和推廣。2018年1月,教育部印發《普通高中課程方案和語文等學科課程標準的有關情況》提出,要將3D設計、開源硬件、人工智能正式劃入新課標,成為高中學習的必修課。2019年3月,教育部公佈了《2019年教育資訊化和網路安全工作要點》,同樣指出將開始推動在中小學階段設置人工智能相關課程,逐步推廣編程教育。
由此可見,編程教育目前在世界範圍內都受到巨大重視。有一種聲音甚至認為,「掌握編程比掌握一門外語更有價值,它能夠讓人們與機器和程式交流」。但根據艾瑞諮詢發佈的《2018年中國少兒編程行業研究報告》顯示,中國編程教育的特色是「行業引領」,一些學校積極投入創客教育。少兒編程將以「政策為導向,經濟為依託,社會為基礎,技術為核心」,迎接整個行業的快速發展,規模將在5年內可以達到300億。由是之故,近年除了幾家經營多年的編程企業,例如樂高教育、「Code Monkey程序猿」、「Makeblock童心制物」、「齒輪梨Gear&Pear」、編程貓,以及大大小小編程學習中心外,連壟斷性的科技集團,例如大疆、騰訊、日本的SONG,也湧來要分這塊大餅。
現代美術教育的「編程」科技學習(上)——亞太創藝談之17
本系列文章: