鄭蘭琴 黃星星


[摘? ?要] 隨著人工智能技術的迅猛發展,各地在中小學階段相繼開設了人工智能技術的相關課程。編程類課程是學習人工智能技術的基礎,不少中小學已經開設了相關課程。然而,采用什么樣的教學方式能夠提升學習者的編程技能是研究者關注的熱點。文章采用富有成效失敗的協作編程策略,在小學五年級Arduino課程中開展了為期三個多月的實證研究,綜合采用定性和定量研究相結合的分析方法,跟蹤學習者的編程過程和結果。研究發現:富有成效失敗的協作編程策略能夠顯著提升小學五年級學生的編程技能、編程態度和問題解決能力。
[關鍵詞] 富有成效的失敗; 協作編程; 編程技能; 編程態度; 問題解決能力
[中圖分類號] G434? ? ? ? ? ? [文獻標志碼] A
[作者簡介] 鄭蘭琴(1979—),女,山西五臺人。副教授,博士,主要從事計算機支持的協作學習、學習分析技術、教學設計等研究。E-mail: bnuzhenglq@bnu.edu.cn。
一、引? ?言
(一)研究背景
隨著信息技術的迅猛發展,以機器學習和深度學習為關鍵技術的人工智能技術正影響著人們的生活和學習方式,并為教育領域帶來了新的發展機遇。編程技能作為實現人工智能技術的基礎,日益受到各個國家的高度重視并成為基礎教育的重要組成部分。2017年7月,我國國務院正式頒布《新一代人工智能發展規劃》,明確指出要廣泛開展人工智能科普活動,在中小學階段設置人工智能相關課程,并且將人工智能真正寫入高中課本[1]。2017年9月,教育部印發《中小學綜合實踐活動課程指導綱要》,也將“趣味編程入門”和“開源機器人初體驗”兩個模塊作為“設計制作活動(信息技術)”的推薦主題[2]。
人工智能技術進課堂的主要目的是培養學生的高階思維能力和創新能力,并提升學生的信息素養。有學者指出,小學階段的人工智能課程應該包括編程、智能機器人等內容,初高中階段的人工智能課程包括程序設計、算法等內容[3]。為了幫助中小學生掌握如何設計程序并進行趣味編程,以及如何創作智能機器人,選擇什么樣的教學方式就成為要解決的關鍵問題。有研究者指出,人工智能類課程應與學生的生活密切相關,應采用任務驅動式、協作學習、基于問題或融入游戲機制的教學策略,讓學生切身體會人工智能的巨大效應[4]。在人工智能課程體系中,編程類課程是普遍開設的一類課程,這類課程到底采用什么樣的教學策略才能取得良好的教學效果就成為研究熱點。經過大量的文獻和實地調研,本研究嘗試探索富有成效失敗的協作編程策略在小學Arduino課程中的應用效果,重點關注采用富有成效失敗的協作編程策略對小學生的編程技能、編程態度和問題解決能力的影響。
(二)研究問題
根據研究目標,本研究確定以下三個研究問題:
(1)與傳統的講授式策略相比,富有成效失敗的協作編程策略是否能夠顯著提升學習者的編程技能?
(2)與傳統的講授式策略相比,富有成效失敗的協作編程策略是否能夠顯著改善學習者的編程態度?
(3)與傳統的講授式策略相比,富有成效失敗的協作編程策略是否能夠顯著提升學習者的問題解決能力?
二、文獻綜述
(一)中小學編程教育現狀及問題述評
1. 中小學編程教育現狀
目前,中小學開設編程課程是傳播人工智能技術的主要途徑,旨在培養學生的邏輯思維和高階思維能力以及問題解決能力。作為信息技術教育起步最早的美國,非常重視對計算機科學興趣的培養。2015年,美國前總統奧巴馬曾簽署“Every Student Succeeds Act”法案,明確指出要將計算機科學視為基礎學科,并盡早開展計算機科學教育[5]。2016年10月,美國制定了《K-12 計算機科學框架》(K-12 Computer Science Framework),該框架規定了五大核心概念和七項核心實踐,并凸顯中小學計算機科學課的重要地位,提倡加強該課程的實踐性[6]。
不僅僅是美國,其他國家也相繼制定相關政策并鼓勵把計算機課程列為基礎教育階段的必修課。例如:英國將2014年定為“編程年”,并將計算機課程定為5—16歲學生的必修課程;日本將從2020年開始在所有的小學全面開設編程課;韓國則從2015年進行編程教育的試點,2018年編程教育全面進入中小學[7]。
2017年,我國頒布了《新一代人工智能發展規劃》,各地中小學紛紛開設人工智能相關課程。在高中階段的信息技術課程標準中,新增“模塊4:人工智能初步”,該模塊包括“人工智能基礎”“簡單人工智能模塊開發”“人工智能技術的發展和應用”[8]。小學階段,也將“算法與程序設計入門”“機器人入門”列為信息技術課程的拓展模塊[3]。
2. 我國中小學編程教育存在的問題
筆者在前期的調研過程中發現,我國中小學編程教育中主要存在以下幾方面的問題:
(1)從硬件環境來看,學校建設狀況參差不齊,有的學校已經建設好人工智能教室、創客教室供學生使用,有的還沒有起步。
(2)從軟件資源來看,課程體系層次不齊,很多學校自主開發校本課程。開設什么樣的人工智能類課程主要取決于教師的知識基礎和興趣。另外,市面上的編程教材質量良莠不齊,缺乏統一的規劃和管理。
(3)從師資配備來看,發現師資緊缺、教師工作負擔較重,教師不僅要講授信息技術課程,還要講授新增的人工智能方面的課程。另外,缺乏系統的教師培訓,教師的編程教學能力亟待提升。
(4)從編程教學方式來看,為保證教學進度,教師在教學過程中通常采用傳統的講授式教學法,即教師直接講解編程的知識、技能和程序設計思路及方法,學習者沒有自主探究的時間和空間。
(5)從評價角度來看,教師通常只關注學生的學習結果,如學生是否制成作品、程序最終的運行效果等,重結果輕過程,忽視了“學生經歷了什么”以及“學習是否發生”,學生自身也缺乏完整的解決問題的學習體驗。
(6)從學生的學習方式來看,學生在編程過程中往往不能自主發現和解決問題,由于時間和精力有限,教師只能幫助部分學生排查和解決問題。同時,學生遇到一點小困難并且長時間不能解決而無法按時完成課堂任務,常常產生無助和挫敗感,由此導致對編程的興趣逐漸消失。
上述問題中,前面三類問題需要政策的支持、經費和人力的投入等才能解決,而后面三類問題則可以通過改變傳統的教學方式得以解決。本研究嘗試探索富有成效失敗的協作編程策略,以提升學習者的編程技能、態度和問題解決能力。
(二)富有成效的失敗的原理及應用現狀述評
1. 概念界定及設計原理
富有成效的失敗(Productive Failure)是新加坡學者Manu Kapur于2008年提出的。2008年,Manu Kapur及其研究團隊在計算機支持的協作學習(Computer Supported Collaborative Learning,簡稱CSCL)環境中開展了第一個驗證富有成效的失敗的教學實驗,他們發現學習者在解決問題中經歷的失敗對于促進學習的發生具有積極作用,于是提出了“Productive Failure”這一概念[9]。
2012年,Manu Kapur進一步對富有成效失敗的教學設計模式和原理進行了詳盡的闡述,主要包括兩個階段、三個設計原則和四種機制[10]。其中,兩個階段包括生成—探索階段和鞏固階段,如圖1所示;三個設計原則包括:創造解決復雜問題的學習情境、為學習者提供解釋和細化問題解決方案的機會、引導學習者對比失敗的問題解決方案和標準方案的機會;四種機制如圖2所示。
2. 富有成效失敗策略的應用研究
國內外學者采用富有成效失敗的策略開展了相關研究。比如,Kennedy-Clark 采用富有成效失敗的策略支持澳大利亞7—9年級的學生在多用戶虛擬環境中進行科學探究,整個研究包括三個階段:第一階段學生參加非結構化的學習活動,第二階段參加結構化的學習活動,第三階段參加另外一個非結構化的學習活動,最后發現采用富有成效失敗的學習策略有助于學習者解決復雜問題[11]。Pathak S A.等以新加坡十年級的學生為研究對象并分為兩種情況開展研究,即一部分學生采用富有成效失敗的學習策略,另一部分學生采用傳統的學習策略,所有學生的任務相同即學習歐姆定律和并聯電路。定性分析的結果表明,最初的失敗和探索的經歷為學習者提供了良好的學習機會,不僅擴大了視野,而且促進了學習者的深度投入[12]。Loibl等研究者采用富有成效失敗的策略檢驗學習者是否能夠正確進行自我評價,他們邀請240名十年級的德國學生學習變量這一概念,實驗組的學生首先嘗試自己解決問題、經歷失敗,然后再接受教師的指導,而控制組的學生在解決問題前先接受教師的講解和指導。結果表明,采用富有成效失敗策略的學生對于自身能力的感知具有更加清晰的認識,親身經歷了失敗和探索后能夠認識到自身能力的不足,從而取得比接受傳統教學的學習者更好的學習效果[13]。最近,還有學者采用富有成效失敗的策略并結合基于項目的學習方式來考察學習者的協作問題解決技能,兩個六年級的班級參與了此項研究,實驗班采用富有成效失敗的策略學習,控制班則沒有采用,學習任務相同即探索植物的適應性問題。研究結果表明,無論在概念的理解還是小組作品方面,實驗班的成績都比控制班好,而且實驗班的學習者具有更強的學習自主性[14]。
我國關于“Productive Failure”一詞的中文譯法尚不統一,共有三種譯法:“啟發性挫敗”[15]、“有價值的失敗”[16]、“有效失敗”[17]。本文將“Productive Failure”理解為“富有成效的失敗”。國內學者也采用富有成效的失敗開展了相關研究。比如,探索如何在翻轉課堂中利用啟發性挫敗進行教學設計[15]。還有研究者把有效失敗作為學習活動的設計理念,支持八年級學生在生物課中利用虛擬3D星球開展科學探究[18]。也有研究者基于設計的研究范式并采用有效失敗理論作為指導,在初一年級的編程課中“循環結構”這一個單元通過三輪迭代并經過三周的嘗試,發現有效失敗的腳手架設計能夠與學習者的已有知識相匹配并提升學習效果[19]。
通過對已有研究的回顧和分析,筆者發現存在三方面的問題:第一,鮮有研究采用富有成效失敗的策略在小學生的編程課中開展實證研究并論證其效果;第二,已有的研究通常引導學習者自主探索,較少開展協作學習以鼓勵與同伴一起探索,并體驗失敗進而走向成功;第三,現有研究大多采用基于設計的研究范式通過多輪迭代的方式開展研究,較少有研究通過實證研究的范式對比富有成效的協作編程策略與傳統策略的差異。基于以上問題,本研究通過準實驗的方法在小學五年級開展為期三個多月的實證研究,采用定性和定量研究相結合的方法,對比不同教學策略對學習者編程技能、態度和問題解決能力方面的影響。
三、研究設計
(一)研究樣本
本研究選取北京某小學五年級的56名學生作為研究樣本,這些學生通過學校興趣班的方式進行招募。隨機分配所有學生在兩個班級進行學習,每個班級28人。由于部分學生在教學活動中未能全程參加,因此,最后全程參與的學生共計42名,每個班級21名。
(二)研究方法
本研究采用準實驗法開展研究,隨機分配21名學生為實驗班,另外21名學生在控制班。實驗班采用富有成效失敗的協作編程策略開展教學活動,而控制班則采用傳統講授式的方法開展教學活動。
在數據的搜集和分析方法方面,本研究選取定量研究和定性研究相結合的方法。其中,定量研究主要采用調查法來了解學習者的編程態度和問題解決能力,定性研究主要采用訪談法來了解學習者在編程過程中遇到的失敗以及解決策略等。另外,采用統計分析方法來檢驗兩個班級在編程技能、編程態度以及問題解決能力方面的差異。
(三)研究假設
本研究建立如下三個假設:
(1)基于富有成效失敗的協作編程策略能夠顯著提升學習者的編程技能;
(2)基于富有成效失敗的協作編程策略能夠顯著提升學習者的編程態度;
(3)基于富有成效失敗的協作編程策略能夠顯著提升學習者的問題解決能力。
(四)研究程序
本研究的程序如圖3所示,主要包括三個階段:第一個階段,針對學習者的編程技能、編程態度和問題解決能力進行前測,從而確保兩個班級在編程技能、編程態度、問題解決能力方面具有相同的水平。此外,還對學習者進行Arduino編程工具的培訓。第二個階段,開展實驗階段。為了控制各種干擾因素,兩個班級的學習任務、學習時長、教師、學習資源等均相同。所不同的是實驗班采用富有成效失敗的協作編程策略開展教學,控制班則采用傳統的講授式進行教學。就實驗班的學生而言,首先,學習者以小組協作學習的方式自主探索,進行初次編程實踐,體驗失敗;其次,每個小組分析失敗的原因、提出修改方案并完成編程和調試;最后,小組分享作品并進行反思和總結。控制班學生的實施程序包括三個步驟:第一步,教師講解相關的編程知識、方法和設計思路;第二步,學習者自己編寫程序;第三步,學生分享編程作品、教師總結。第三個階段,就學習者的編程技能、編程態度和問題解決能力進行后測,并隨機選取七名學生進行深度訪談。每個班級完成四個Arduino編程任務,每個任務實施2—3周,整體實驗過程持續13周。第一個編程任務是制作模擬交通燈和智能信號燈,即首先利用LED燈完成交通燈的變換過程,然后加入按鈕模塊,實現黃燈閃爍,制作智能交通信號燈。第二個任務是利用LED燈設計創意臺燈,然后利用樂高積木搭建創意臺燈。第三個任務則利用Arduino中的套件制作坐姿提示器,當距離小于20厘米時,會自動發出聲音進行提示。第四個任務是制作智能風扇,實現風扇邊轉動邊搖頭。
(五)研究工具
本研究采用的研究工具主要包括編程技能測試題目、編程態度和問題解決能力的調查問卷、學習單以及Arduino編程工具。
1. 編程技能測試題目
主要測試學生對Arduino編程技能的掌握程度。前測題目主要包括順序結構、循環結構、函數三大模塊,題目以偽代碼和文本、圖片相結合的方式進行呈現,適合小學生的閱讀方式和認知水平,旨在測量實驗班和控制班學生在編程技能方面是否存在顯著性差異。后測題目主要考察學生解決實際問題的編程技能。
2. 編程態度和問題解決能力的調查問卷
編程態度問卷改編自Shim, Kwon, Lee的調查問卷,該問卷包括三個維度即編程的價值、編程的興趣、編程的信心[20]。該問卷為五點量表,一共11個題目。問卷總體信度為0.905。問題解決能力問卷改編自Heppner等開發的調查問卷,該問卷包括三個維度即解決問題的信心、風格、情緒控制力[21],該問卷為五點量表,一共15個題目。問卷總體信度為0.794。
3. 學習單
主要為學習者提供指導,包括編程任務描述、編程要求和流程提示三部分。
4. Arduino編程工具
Arduino是一套開源的電子微控制器和編程平臺,其軟件部分使用類似于C語言的開發環境,硬件部分即Arduino主板則是在計算機程序的控制下,通過傳感器來感知環境,并能夠控制LED燈、電機等裝置輸出信號。
四、研究結果
(一)編程技能
編程技能測試主要衡量學習者動手編程的操作技能,包括順序、循環、選擇結構等。前測旨在了解實驗班和控制班在編程技能方面的差異。根據前測結果,發現實驗班和控制班在編程技能方面沒有顯著性差異(t=1.808,p=0.078)。因此,可以進行后續的實驗。為了檢驗富有成效失敗的協作編程策略對編程技能的影響,采用協方差分析法進一步對后測成績進行檢驗。首先,需要檢測是否滿足協方差分析的條件,即變量是否正態分布、方差是否齊性。結果表明,后測編程技能測試成績呈現正態分布(p=0.134>0.05),方差齊性(F=1.935,p=0.172>0.05)。因此,可以采用協方差進行分析。協方差分析的結果表明,實驗班(M=70.71, SD=11.03)和控制班(M=54.29,SD=10.80)在編程技能方面具有顯著性差異(F=19.75,p=0.000<0.05),并且實驗班的編程技能顯著高于控制班。因此,富有成效失敗的協作編程策略能夠顯著提升學習者的編程技能。
(二)編程態度
編程的態度主要衡量學習者利用Arduino工具進行編程的興趣和信心。前測結果表明,實驗班和控制班在開展實驗前的編程態度方面沒有顯著性差異(t=1.770,p=0.084)。然后,檢測是否滿足協方差分析的條件,即變量是否正態分布、方差是否齊性。結果表明,后測的態度呈現正態分布(p=0.200>0.05),方差齊性(F=2.318,p=0.136>0.05)。進一步采用協方差分析法檢驗富有成效失敗的協作編程策略對編程態度的影響。根據統計結果,發現實驗班(M=4.29,SD=0.55)和控制班(M=3.68,SD=0.75)在開展實驗后的編程態度方面具有顯著性差異(F=5.708,p=0.022<0.05),并且實驗班的編程態度顯著高于控制班。因此,富有成效失敗的協作編程策略能夠顯著改善學習者的編程態度。
(三)問題解決能力
實驗前,對兩個班級學生的問題解決能力進行前測,獨立樣本t檢驗結果顯示,實驗班和控制班在問題解決能力方面沒有顯著差異(t=0.116,p=0.908> 0.05)。然后檢測是否滿足協方差分析的條件,即變量是否正態分布、方差是否齊性。結果表明后測的問題解決能力數值呈現正態分布(p=0.200>0.05),方差齊性(F=0.835,p=0.366>0.05)。進一步采用協方差分析法來檢驗富有成效失敗的協作編程策略對問題解決能力的影響。研究結果表明,實驗班(M=3.79,SD= 0.66)和控制班(M=3.36,SD=0.46)在開展實驗之后的問題解決能力存在顯著性差異(F=5.815,p=0.021<0.05),并且實驗班學生的問題解決能力顯著高于控制班。因此,富有成效失敗的協作編程策略能夠顯著提升學習者的問題解決能力。
(四)訪談結果
為了探究學生在學習編程過程中的體驗,本研究隨機選取了7名學生進行深度訪談。根據訪談結果,學生們表示自己非常喜歡與同伴進行協作編程,從一開始討論算法設計思路到協作解決編程過程中遇到的困難和問題,都離不開同伴的支持和幫助。各個小組的編程結果展示和分享,也開闊了他們的視野,進一步拓展了編程思路。
被訪者還表示,一開始和同伴一起繪制流程圖,然后組內討論解決問題方案,最后嘗試編程,這樣的學習過程不僅為他們提供了充分的探索空間,而且提供了方向上的引導。與傳統的教師講授編程方案的教學方式相比,學生們更認可富有成效失敗的協作編程策略,他們認為這種學習方式提供了更多的思考和探究的機會。
當被問到實際編程中遇到問題、遭遇失敗后如何解決時,大多數學生保持積極樂觀的態度。一般的解決方案是:首先,努力嘗試自己解決,有問題時,一方面借助學習單上的引導和提示并重新對照流程圖思考失敗的原因,另一方面與小組其他成員討論,尋求組內成員的幫助,而非單純依賴于教師的直接指導。被訪的學生都表示,他們非常喜歡和同伴共同解決問題的體驗,因為很多問題可以通過同伴的幫助有效解決,這樣的學習過程不僅增強了學生的成就感,而且從失敗的經驗中學生收獲更多,如解決問題的遷移能力、承受挫折能力等。最后,通過教師的總結,進一步引發學生的深度思考,促使他們逐漸走向成功。
五、討? ?;論
(一)編程技能提高的原因
編程技能主要考量學生在學習編程后,對編程相關概念的理解程度以及編程實踐操作的能力。實驗結果表明,實驗組在編程技能測試中表現更為優異,所完成的編程作品更加精致。筆者深入分析實驗組編程技能能夠提高的主要原因,在于富有成效失敗的協作編程策略能夠切實幫助學習者體驗失敗、解決問題、走向成功。由于實驗組的學生采用富有成效失敗的協作編程策略,學習者在整個編程過程中經歷了兩個階段,即生成—探索階段和鞏固階段。在生成—探索階段,學習者通過對任務的分析,繪制流程圖并與同伴一起討論,確定初步的編程方案后嘗試初次編程,這個過程中學生常常會遇到各種各樣的問題,經歷了不同程度的失敗和挫折,這時候有的學生有放棄的苗頭。為此,在教師的引導下首先與同伴進行面對面交流和討論,能夠解決一部分問題,而對于同伴也無法解決的問題則在教師的幫助下最終解決。在鞏固階段,每個小組需要認真反思失敗的原因,教師引導學生對比失敗的編程方案與標準方案之間的區別,從而幫助學生鞏固編程技能。
在整個學習過程中,學生前期擁有充分探索和嘗試的機會,由此獲得豐富的學習體驗,特別是經過學生自己探索而生成的編程思路和方案,更容易在其他情境下遷移和應用。已有的研究表明,學習者經過自主探究而生成的知識,記憶更加持久并且更容易遷移[22]。另外,通過與同伴的交流、教師的指導能夠幫助學習者更加清晰地認識到自身編程技能的不足。已有的研究也曾指出,教師的指導和同伴的互動能夠顯著提升協作學習效果[23]。學習者也經歷了表征問題、生成問題解決方案、嘗試編程、檢驗解決方案的完整學習過程。與傳統講授式的教學方式相比,實驗組學生對編程相關的知識和技能的理解更深刻。因此,編程技能有顯著提升。
(二)編程態度改善的原因
編程態度主要考量學生在編程興趣、信心和價值認同方面的觀點。通過本研究,筆者發現,由于實驗組采用富有成效失敗的協作編程策略,學習者經過自主探索編程思路和方案并嘗試編寫程序,提升了對編程的興趣,特別是自主發現編程問題和解決方案時,極大地增強了學習者的編程信心。另外,學習者雖然會遇到困難并經歷失敗,但是失敗卻能夠促進學習者的深度反思并幫助修正錯誤的認知[24],而且通過同伴的幫助和教師的指導及時解決問題。因此,增強了學習者對編程價值的認同感。特別是一些女生,一開始對編程持抵觸的態度,但是經過同伴的鼓勵和教師的指導,特別是經過親自探索程序設計思路并調試程序、成功創作作品的學習過程,激勵了她們對編程的喜愛。
(三)問題解決能力提升的原因
本研究設計的問題源于實際生活,無論是制作智能交通燈、創意臺燈,還是創作坐姿矯正器和智能風扇,與學習者的生活密切相關。因此,在一定程度上激發了學習者解決問題的興趣。已有的研究也表明,解決真實生活中的問題能夠提升問題解決技能[25]。最重要的原因在于,實驗組的學生經歷失敗、協作解決問題,對于編程知識和技能的理解更加深刻,相比于傳統教學方式而言,經歷了自主探索的階段,更容易促進記憶的保持和遷移能力,由此提升了實驗組學習者的問題解決能力。
六、結? ?語
本研究通過為期三個多月的實證研究,探索了富有成效失敗的協作編程策略對于小學五年級學生在編程技能、編程態度和問題解決能力方面的影響。實驗數據表明,采用富有成效失敗的協作編程策略能夠顯著提升小學五年級學生的編程技能、編程態度和問題解決能力。本研究也存在兩方面的不足:第一,由于研究條件所限,研究樣本量較小,未來研究將進一步擴大樣本,并在不同學校開展實證研究,進一步論證富有成效失敗的協作編程策略的效果。第二,本研究只針對小學五年級學生的Arduino課程開展實證研究,未來研究需要在其他課程并選擇其他研究對象進一步探索。
經過本研究的探索,筆者建議改變傳統的講授式教學方法,改變以結果為導向的教學方式,關注學生的學習過程,并鼓勵學生自主探索,為學生提供完整的學習體驗,讓學生體驗發現問題、協作編程、探索問題解決方案、經歷失敗、走向成功的學習過程,從而促使學習者更加熱愛編程,由此提升邏輯思維和推理能力以及創新意識。
[參考文獻]
[1] 新一代人工智能發展規劃[EB/OL].[2019-03-27].http://www.gov.cn/zhengce/content/2017-07/20/content_5211996.html.
[2] 中小學綜合實踐活動課程指導綱要[EB/OL].[2019-03-27]. http://www.moe.gov.cn/srcsite/A26/s8001/201710/t20171017_316616.html.
[3] 陳凱泉,何瑤,仲國強.人工智能視域下的信息素養內涵轉型及 AI 教育目標定位——兼論基礎教育階段AI課程與教學實施路徑[J].遠程教育雜志,2018,36(1):61-71.
[4] 祝智庭,雷云鶴.STEM教育的國策分析與實踐模式[J].電化教育研究,2018(1):75-85.
[5] 陳斌.讓每個學生都成功——ESSA 與奧巴馬政府的教育政策傾向[J].教育研究,2015(7):149-155.
[6] K-12 computer science framework [EB/OL]. [2016-10-20]. https://k12cs.org/.
[7] 李玉閣,劉軍.國內中小學編程教育研究現狀分析[J].中國現代教育裝備,2018,288(8):26-29.
[8] 中華人民共和國教育部.普通高中信息技術課程標準(2017年版)[M]. 北京:人民教育出版社,2018: 26-28.
[9] KAPUR M. Productive Failure [J]. Cognition & instruction, 2008, 26(3):379-424.
[10] KAPUR M, BIELACZYC K. Designing for productive failure[J]. Journal of the learning sciences, 2012, 21(1):45-83.
[11] KENNEDY-CLAR S. Designing failure to encourage success: productive failure in a multi-user virtual environment to solve complex problems, Proceedings of EC-TEL 2009, Lecture Notes in Computer Science,2009[C]. Berlin, Heidelberg:Springer,2009.
[12] PATHAK S A, KIM B, JACOBSON M J, et al. Learning the physics of electricity: a qualitative analysis of collaborative processes involved in productive failure[J]. International journal of computer-supported collaborative learning, 2011, 6(1): 57-73.
[13] LOIBL K, RUMMEL N. Productive failure as strategy against the double curse of incompetence [J]. Learning: research and practice, 2015, 1(2): 113-121.
[14] SONG Y. Improving primary students' collaborative problem solving competency in project-based science learning with productive failure instructional design in a seamless learning environment [J]. Educational technology research and development, 2018, 66(4): 979-1008.
[15] 楊玉芹.啟發性挫敗的設計研究——翻轉課堂的實施策略[J].中國電化教育,2014(11):111-115.
[16] 張瀾,王婷.淺析課堂中“有價值的失敗”的機制及設計原則[J].教學與管理,2015(18):94-96.
[17] 郭婧遠.創客教育中利用有效失敗促進學習的研究[D].上海:華東師范大學,2016.
[18] 曹鷺,徐光濤.利用虛擬世界及基于代理的模型學習科學探究——計算機化科學探究模型淺析[J].中國電化教育,2017(7):33-41.
[19] 劉新陽.利用有效失敗的創客學習活動設計——一項探索性研究[J].中國電化教育,2018(4):82-90.
[20] SHIM J, KWON D, LEE W, et al. The effects of a robot game environment on computer programming education for elementary school students [J]. IEEE transactions on education, 2017, 60(2): 164-172.
[21] HEPPNEP P, PETERSEN C. The development and implications of a personal problem-solving inventory [J]. Journal of counseling psychology, 1982, 29(1): 66-75.
[22] KAISER I, MAYER J, MALAI D, et al. Self-generation in the context of inquiry-based learning[J]. Frontiers in psychology, 2018(9): 1-16.
[23] HSIEH Y, TSAI C. The effect of moderator's facilitative strategies on online synchronous discussions[J]. Computers in human behavior, 2012, 28(5): 1708-1716.
[24] TAWFIK A, GIABBANELLI P, HOGAN M, et al. Effects of success v failure cases on learner-learner interaction[J]. Computers & education, 2018, 118:120-132.
[25] RONG H, CHOI I. Integrating failure in case-based learning: a conceptual framework for failure classification and its instructional implications[J]. Educational technology research and development, 2019, 67(3):617-637.