開展和普及中小學程序設計教育,是教育信息化2.0的重要組成部分,是培養學生信息素養和計算思維的重要載體,也是智慧教育背景下培養科技創新人才的重要基礎。然而,中小學程序設計教育曾經飽受爭議,如今又面臨新的挑戰,為理清思路、明確方向,我們對華南師範大學教育信息技術學院鍾柏昌教授進行了專訪,請他就程序設計教育的趨勢與挑戰發表精彩觀點。
「兩起一落」的U形發展階段
記者:從我國中小學程序設計教育的發展歷史來看,可以分為幾個階段,每個階段各有哪些特點?
鍾柏昌:我國中小學程序設計教育可以概括為「兩起一落」的U形發展階段。
第一次崛起始於20世紀80年代。1981年,蘇聯計算機教育專家伊爾肖夫在第三屆世界計算機教育應用大會上正式提出「程序設計——人類的第二文化」的觀點,受此影響,1982年在清華大學、北京大學、北京師範大學、復旦大學和華東師範大學等5所大學的附中試點開設BASIC語言選修課,這也是我國中小學程序設計教育的開端。
第一次低潮始於20世紀90年代末期。20世紀末,我國信息技術應用的社會普及已經達到了一定程度。在此背景下,程序設計文化的地位逐漸被網絡多媒體素養、辦公軟體的操作技能所取代,如1997年頒發的《中小學計算機課程指導綱要(修訂稿)》,該文件明確指出在小學和初中階段不宜教程序設計語言,高中階段可以作為部分學生的選修課,而在2000年發布的《中小學信息技術課程指導綱要(試行)》,沿襲了前述文件精神,直至2003年發布的高中信息技術課程標準,對程序設計依然未給予足夠重視,其設置的「算法與程序設計」選修模塊鮮有學校開設。
第二次崛起是近三年發生的。因人工智慧的興起,程序設計教育強勢回歸。標誌性事件源於2017年國務院印發的《新一代人工智慧發展規劃》,其明確指出在中小學階段要逐步推廣編程教育,其後,在教育部發布的高中信息技術課程標準修訂版中,至少有六個模塊涉及編程內容,程序設計教育的地位被空前強化。
綜上,歷史上的中小學編程教育,因受「程序設計是第二文化」的影響,成為一門普遍開設的課程,而後隨著信息技術的普及和素養教育的興起而地位旁落,如今強勢回歸,成為中小學生的一門必修課或選修課。經過多年持續不斷的教育信息化建設,我國中小學校已經具備了開展程序設計教育的良好的師資和硬體條件。根據2017年教育統計數據,我國中小學信息技術教師數和教學用計算機數均有顯著增加,相對應的生師比和生機比呈逐年下降趨勢,截至2017年分別下降到574.5∶1和7.9∶1。
編程工具的低門檻化
記者:目前,我們在編程工具的選擇方面,存在明顯的編程工具的低門檻化趨勢,容易出現「入門容易深入難」,如何看待這樣的問題呢?
鍾柏昌:經過約10年的時間,小學階段已基本普及積木式編程環境(以Scratch為代表),而在中學階段,代碼式程式語言Python正在逐步取代VB語言。儘管兩者風格差異明顯,但在進入門檻方面均較低,易學易用,用戶體驗較好。低門檻並非低性能,與之伴隨的還有「高天花板」特徵,也就是能夠利用這些低門檻的編程環境設計製作出複雜的作品,完成類型各異的項目。
問題主要來源於兩個方面:一是由於「高天花板」特徵,容易出現「入門容易深入難」的問題;二是如何從積木式編程向代碼式編程有效遷移。針對前者,設計螺旋上升的、富有趣味的學習項目是關鍵;對於後者,實際上也是如何解決學段銜接的問題。學術研究早已表明,積木式程式語言對提高學生設計思維和創意能力有非常積極的幫助,只要處理得當,這些思維和能力能夠較好地遷移到代碼式程式語言的學習。
教育對象的普及化
記者:根據目前調研情況,多數省份在小學五年級或六年級開設了程序設計或機器人課程。校外教育的情況則呈現出明顯的低齡化趨勢,諸多在線編程教育平臺瞄準了6、7歲起點的兒童。在教育對象的普及化方面,機會與挑戰在哪裡呢?
鍾柏昌:教育對象的普及首先體現在國家層面對推廣編程教育的政策導向,尤其在修訂後的高中信息技術課程標準中,必修模塊1(數據與計算)已經將程序設計相關內容列為核心內容,在高中階段普及程序設計教育已成定局。
在教育對象的普及化方面,挑戰在於,「千人一面」的普及教育可能面臨「一刀切」的風險,落入史上「全民學習BASIC」的窠臼。基於類似的擔心,華東師範大學任友群教授認為,教育信息化2.0必須處理好信息素養提升與信息技術專長培養的關係。具體到程序設計教育,也需要處理好程序設計的一般素養提升與專長培養的關係。作為通用素養的培養,程序設計教育應該側重計算思維的培養;作為技術專長的培養,則可以強化專業取向的計算思維(如算法)的培養。因此,必修和選修的內容區分,普及教育與專長培養的關係,必須辯證對待、互為補充。
教育目標的思維化
記者:就程序設計教育而言,核心素養主要表現為計算思維。在以數據為核心的知識創新時代,計算思維對於學生發展的價值得到了廣泛的認同。我們從發達國家的體系中有哪些需要借鑑的地方?
鍾柏昌:目前,一些西方發達國家均推出了基於計算思維的計算機科學教育體系,在美國2015年底發布的《每位學生都成功法案》中,甚至將計算思維上升為與讀、寫、算並列的素養。思維導向的教育強調通過體驗、認識及內化等過程逐步形成相對穩定的思考問題、解決問題的思維方法和價值觀,實質上是獲得認識世界和改造世界的世界觀與方法論。因此,程序設計教育的重點不是教會學生編寫代碼,也不是學習未來成為程式設計師的專業性極強的知識,而是要理解與計算機進行交流的方式,並獲得利用計算機解決問題的基本思維。具體而言,程序設計教育對學生計算思維的培養是以程序思想為中心的,包含系統思維與結構思維、抽象思維與邏輯思維、實體思維與關係思維等諸種思維的塑造。
然而,思維取向面臨的一個重要挑戰在於如何科學評價學生的計算思維發展水平。如果只是採用作為結果的程序作品評價,則難以超越編程技能訓練的老路子。除了內隱的心理變化,外顯的行為意識、態度、習慣和解決問題的過程是評價學生計算思維水平的重要維度,但這需要教師耗費大量的時間精力去觀察和理解學生的行為過程。實踐經驗表明,採用主輔式雙師教學模式和提供有效的學習支架,如創意設計報告和結構化的學習反思報告,並結合一些自動化的測評手段,可以解決此類問題。
教育內容的融合化
記者:傳統程序設計教育主要關注程序設計本身知識內容如語法和算法的掌握,學科中心取向明顯,視野較為單一。STEM教育的興起,推動了程序設計教育走向跨學科融合的新道路。您認為目前多學科融合面臨的挑戰是什麼?
鍾柏昌:多學科融合面臨的最大挑戰,在於長期以來的分科教學導致缺少多學科視野的課程和師資。課程方面的問題,亟待教材出版界推陳出新。一是要開展師資團隊建設,鼓勵不同學科教師以項目為中心形成教研團隊,如青島二中形成的六大類教師指導團隊就頗具戰鬥力;二是在形成教研團隊的基礎上,需要開展教材的校本化改造。
例如,2016年由美國多個學術組織和學區聯合制定的《K-12計算機科學框架》描述了計算科學與數學、科學、工程的交叉實踐。從教育目標角度而言,計算思維的提出,就是要強調在多學科領域中運用計算工具和方法解決各種現實問題。我們的本土實踐也表明,利用程序設計開展科學探究和工程實踐,可與數學、物理、生物等學科和機器人、創客等進行深度融合,有效培養學生的實踐創新能力。
學習方法的遊戲化
記者:傳統的編程學習總是與編寫代碼、開發算法和生成可運行的程序緊密聯繫在一起,學生常常還需要通過解決一些數學題(如排序、查找、雞兔同籠問題、找素數等)來學習編程。在遊戲化的程序設計課程方面,您覺得國內學校突破方向在哪裡?
鍾柏昌:與教育內容融合化趨勢所面臨的挑戰類似,我們還缺乏遊戲化的程序設計課程。除了期待教材編寫者做出改進外,更多的希望寄托在教材的校本化改造和教學創新層面。例如,北京景山學校開展的「遊戲式實踐活動+編程教學」的改革,以簡單有趣的方式,促進了學生從技術成長到思維成長的轉變,以及個體學習與合作學習的融合。
遊戲化學習有兩種含義,一是指向學習結果的遊戲化——開發遊戲類作品(game),二是指向學習過程的遊戲化——開展遊戲式活動(Gamification)。前者要求學生通過項目學習開發出富有趣味的作品,如小遊戲、數字故事、模擬動畫、交互媒體等;後者要求將遊戲元素(如遊戲目標、標識、規則、反饋等)貫穿到非遊戲活動中,形成一種對學習者的激勵機制,驅動學習者達成預定的學習目標。遊戲是社會文化的一種集中體現,無論是前者還是後者,均需建立在對社會問題和社會規則的理解基礎之上。學習程序設計的活動實質上就是兒童社會化的過程,有利於實現技術學習「回歸生活世界」的目的。遊戲化學習在國際範圍內有比較廣泛的應用,麻省理工學院媒體實驗室所倡導的Scratch學習的「4P」原則,即Projects(項目)、Passion(興趣)、Play(玩)和Peers(同伴),就是遊戲化學習兩種含義的綜合運用;Code.org所提供的課程結合深受青少年喜愛的流行元素,如「植物大戰殭屍」「冰雪奇緣」等卡通形象,用不同的主題來表現編程解決問題的不同模式。
學習環境的混合化
記者:在線編程教育在學習環境的混合化方面我們有哪些需要學習和改進?
鍾柏昌:一方面,儘管國內不乏在線編程教育平臺,但缺少免費、共享、好用的本土化的平臺;另一方面,線上和線下教育的銜接關係沒有打通,校內教育基本沿襲傳統的線下教育模式。此類問題的解決,亟須相關教育力量的社會化融合。
學習環境的混合化也包括兩層含義:一是混合性學習,線上線下的混合;二是混合性創作,在學習和借鑑他人工作的基礎上開展再設計和迭代改進。混合性學習將單純的線下學習延伸到線上學習,拓展了學習的空間和時間,尤其是在線社區的應用,方便學習者之間的經驗交流與成果展示,形成志同道合的社交圈子,接受來自同伴的反饋和鼓勵,汲取創作靈感和學習編程技巧,進行在線合作編程。如今許多編程工具都提供了配套的、鼓勵學生創建和分享編程作品的在線社區。最突出的例子就是青少年編程社區Scratch網站,學習者可以通過「進去看看」功能直接修改原作品的代碼和元素,進行再創作。
教育力量的社會化
記者:我們的校外培訓活動與校內教育銜接不夠,在教育力量的社會化參予方面,有哪些需要加強?
鍾柏昌:我們面臨的最大挑戰,是由誰來負責此類公益組織的籌建?如何協調參與各方進行組織管理和運營?這裡存在一個教育辦學理念的轉變問題,以及教育生態的構建問題。突破學校辦教育的局限,走向更為開放的教育辦學理念應該成為今後教育改革的方向之一,程序設計教育亦然。如今,一些城市和學校已經出現了通過政府採購教育服務的方式引入校外師資和課程,是值得關注的一種發展動向。
《中國教育報》2019年05月04日第3版