通过虚拟机器人编程课程培养计算思维
1 引言
在过去的十年中,计算思维在中小学教育计算机教育领域受到了广泛关注。它通常被视为一种21世纪的核心技能,依赖于算法思维和设计过程,尤其是在各种情境下具有可推广性(Grover 和 Pea 2013;Wing 2006)。2011年,一个计算机科学(CS)专家委员会在研究计算机科学在将计算思维引入中小学教育中的作用时,广泛将计算思维定义为“以可由计算机解决的方式解决问题的方法⋯⋯一种可迁移并应用于各学科的问题解决方法论”(Barr 和 Stephenson 2011)。2015年,美国的国家教育政策明确将计算机科学(CS)纳入全面的科学、技术、工程和数学(STEM)教育之中,并且“计算思维”一词被添加到《下一代科学标准》中,作为一项可在多个科学内容领域应用的核心科学实践(Weintrop et al. 2015)。尽管计算思维在中小学教育政策中日益普遍,但目前仍缺乏足够的实证研究来评估在机器人技术环境中开展的计算思维教学是否能够可靠地培养出适用于其他情境问题解决的计算技能。
1.1 开发用于可推广的计算思维教学工具
学生可以通过多种方式参与计算机编程,从而接触计算思维的各个方面,包括算法思维,例如网站设计、科学领域的建模与数据分析工具以及机器人技术(Lye 和 Koh 2014)。尽管已在各种特定情境中开发出可迁移的计算思维的评估方法,但这些方法在初中机器人技术中的应用却很少(Koh 和 Motter2013;Werner 和 Kawamoto 2012)。最近一些利用可视化编程语言和虚拟学习环境开展的关于计算思维的研究表明,在这些情境中,学习者在抽象和算法开发等计算实践方面有所发展,并对计算产生了更高的兴趣(哈姆布施和霍斯金 2009;Werner 等 2012)。可视化环境(例如,爱丽丝)和图形化编程语言(例如,Scratch)的进步,促使人们重新关注编程可能为跨学科更广泛的学生群体所培养的可推广技能(布伦南和雷斯尼克 2012;Lye 和 Koh 2014)。可视化语言被认为可以降低初学者程序员所需的认知负荷,使学习者能够专注于高级计算原理(Kelleher 和 Pausch2005)。
通过使输出更加直观具体,或减少不必要的语法,并通过特定编码功能的视觉表征有效“分块”文本元素,学生能够更集中地关注编程的结构逻辑(罗宾斯和朗特里 2010)。提供丰富多样的编程情境,以及为初学者程序员提供“低门槛”和“高上限”( Repenning 和 Ioannidou2010)的新技术,可以使计算机教学更加有效且易于接受。
随着将计算思维纳入中小学教育的势头不断增强,有必要设计计算机科学课程,利用新技术以充分准备并吸引所有学生发展21世纪计算机科学 workforce 所需的计算技能(国家研究委员会 2010)。过去25年中大多数工作场所的技术进步导致对机械技能的需求下降,同时增加了对能够应对复杂的非结构化问题解决任务的劳动者的需求(Lee 和 Apone 2014)。计算机科学领域也不例外;计算问题解决的应用现在被要求应用于更广泛的职业领域,而这些职业传统上并不直接与计算机科学训练相关。事实上,如今个人和雇主需要在与其初始培训环境大不相同的多种情境中动态地使用科学、技术、工程和数学(STEM)技能(国家科学委员会 2015)。这表明,最有价值的技能是可推广且具有生成性的,而不是那些迅速过时的特定技术知识。因此,尽管目前高中阶段已存在更多专业化的计算机科学课程,在初中阶段提供更具可推广性的计算知识和技能基础可能为干预措施带来富有成效的机会。此外,尽管计算机科学是增长最快的STEM领域之一,但进入计算机科学研究与职业领域的女性、来自低社会经济背景的个体以及代表性不足的少数群体的比例差距正在扩大(Atkinson 和 Mayo2011年)。为所有初中生提供公平机会,使其在不同情境中参与计算思维的课程与教学,有助于提高整体参与度,并通过纳入更多样化的视角促进该领域的创新(ACM教育政策委员会2014年)。
因此,理想情况下,用于教授计算思维的工具应充分利用新兴的认知有益技术,让资源有限且兴趣多样的学习者都能便捷使用,并且或许最重要的是,能够培养学习者可广泛迁移的计算思维技能。
1.2 机器人技术作为学习计算思维的背景
自20世纪90年代初以来,教育机器人项目作为富有吸引力和激励性的学习环境,鼓励更广泛的学生群体追求科学、技术、工程和数学(STEM)职业发展路径,因而重新获得了关注与 popularity(Melchior 和 Leavitt 2005)。技术进步通过降低成本以及提高机械和可编程的定制性,使机器人技术对学生更加普及。在学习环境中,学生通常将机器人作为具体工具,用于形式化那些不熟悉且抽象的 STEM 概念(Alimisis2012;Okita 2013)。在数学和物理等领域,机器人的具体情境化和跨学科应用已显示出有助于提升特定领域的技能,同时也促进了解决问题、逻辑思维和科学探究等通用技能的发展(Benitti2012)。同样,早期关于在机器人技术背景下进行计算机编程的研究表明,这为学生学习计算机科学并发展计算思维实践提供了独特的机会(Eguchi 2014;Grover 和 Pea2013;Major、Kyriacou 和 Brereton 2012)。
然而,目前尚不确定学生在教育机器人环境中获得的知识和技能是否能够像政策制定者和计算思维倡导者所期望的那样,推广到不同的情境中。自1960年代以来,针对中小学环境中具体的LOGO编程工具的研究,在关于可迁移的计算机编程技能习得方面得出了多样甚至有时相互矛盾的实证结果(Clements 和 Gullo 1984;Klahr 和 Carver 1988; Pea 1983)。对LOGO及其他编程语言的特定教学通常在实现特定陈述性技能(例如语言功能和语法)的迁移方面更为成功,而成功证明可迁移程序性技能(例如调试启发式方法(Palumbo 1990))习得的研究则较少。Salomon 和 Perkins (1989)提出,这些习得差异源于两种类型的迁移:低通路迁移与高通路迁移。低通路迁移指的是通过长期、反复在不同情境中的练习而自动化的习惯性行为模式,并在出现足够相似条件时被触发。高通路迁移则是通过“有意识地从一个情境抽象到另一个情境”(第152页)实现的,更典型地表现为有意地将在一个情境中学到的技能应用到另一情境中。高通路迁移的核心概念是“有意识的抽象”,即学生必须既具备对某一原理或程序的去情境化表征,又理解其可在哪些特定情境中实例化(Salomon 和 Perkins 1989,第126页)。此外,人们还认为,通过主动学习过程让学生自主构建这些抽象概念,也有助于促进高通路迁移(Mayer 1974; Mayer 和 Greeno 1972)。因此,尽管低通路迁移可能只有在多年的编程实践后才能形成,但通过教学向学生传授有意识的元认知策略,以应用可迁移的计算思维原理,则可能更高效地实现高通路迁移。具体而言,那些为学生提供机会主动构建计算原理的抽象表征,并参与具有多种解决路径的问题解决任务的学习体验,更有可能促进这些一般性原理的迁移。
当将这一理论框架应用于当前形式的典型K‐12机器人项目时,人们对学生成功获得可迁移计算技能的前景产生了一些担忧。持续时间是一个潜在问题——中学阶段的机器人项目通常作为短期(例如6周)选修课实施,不太可能为学生提供足够的编程练习机会,从而难以支持低通路迁移。深度以及对内容的明确强调也是问题所 在。在机器人环境中,软件和硬件开发往往密不可分。然而,当机械任务较为复杂时,许多环境的重点似乎仍主要放在纠正机械错误和构建上,仅有相对较少的学生直接参与编程(Alimisis 2012; Melchior 等人 2005)。此外,这些环境中的机器人编程要求通常非常基础,主要由预设命令序列构成(Alimisis 和 Kynigos 2009;Liu 等人 2013)。在单一具体情境中狭隘地聚焦于某一层次的基础内容,不太可能为高通路迁移提供机会。缺乏适当的教学支持也可能阻碍迁移的机会。2007年计算机科学教师协会的一份报告显示,仅有12个州在初中阶段要求计算机科学认证(Khoury 2007)。由于自身经验有限,非领域专家教师更倾向于关注死记硬背和表层方面的教学,而忽视对学习者发展可迁移实践至关重要的结构特征( Kurland 等人 1986;Catrambone 1998)。在诸如流行的FIRST乐高联赛机器人竞赛之类的非正式环境中,出现了另一种问题:虽然导师具备丰富的专业工程经验并拥有大量学科知识,但他们通常不会接受任何教学培训(Melchior 等人 2005)。因此,在缺乏适当课程支持的情况下,机器人教师常常缺少有效且以概念丰富的方式教授与计算思维相关的材料所必需的内容知识与教学知识的结合(Shulman 1986)。
总之,使用机器人进行编程教育已展现出巨大潜力,包括在特定目标内容领域取得成功的学习成果。然而,由于缺乏在学科内容和教学法方面受过培训的教师,学生参与有意义的计算机科学学习的机会有限,这使得机器人编程学习环境是否最终能够培养广义的计算思维技能成为一个关键的实证问题。
1.3 研究目标
本研究的目的是评估参与可视化编程课程是否与学生在不同类的问题解决任务中应用可推广的计算思维技能方面取得可衡量的进步相关。该课程旨在通过搭建使用图形化编程语言和虚拟机器人模拟等技术的支架,为“有意识的抽象”创造理想条件,从而培养可推广的计算思维技能。首先,通过使用图形化编程语言并提供明确去情境化核心计算概念的视频,支持学生借助抽象的产物和过程来提取编程中涉及的计算原理(Salomon 和 Perkins1989)。其次,提供一系列复杂程度逐步增加的问题解决场景,让学生自主应用这些原理,有助于促进主动学习中的“受控”元认知过程,理论上这一过程比被动接受直接教学更能促进迁移(Mayer 和 Greeno 1972;Salomon 和 Perkins 1989)。对该课程早期版本的初步研究主要局限于编程技能的评估,并显示出显著的学习成效(Liu 等人 2013)。
在此,我们希望扩展以往的研究,以确定虚拟编程环境是否也能在更广泛的计算思维原则上表现出显著的学习成效,尤其是在非机器人环境中的应用。
2 方法
2.1 概述
本文介绍了对一项机器人编程课程进行持续评估和迭代设计的两项研究。第一项研究在单个学区内试点实施了该课程,旨在收集课程设计方面的反馈,调试课程及评估中的技术问题,并对干预措施的学习成效进行初步探索性案例研究评估。第二项研究在四个不同学区的26间教室中实施该课程,采用三种不同版本的计算思维技能与实践评估工具来衡量学习成效。在这项研究中,我们跟踪了每个班级在课程中的进度,并采用前测与后测设计,结合不同版本的测试,评估虚拟机器人课程中的参与程度是否与计算思维方面的学习成效相关。需要特别说明的是,尽管本文所报告的编程活动和课时使得课程可以完全在虚拟环境中运行,但该课程的设计初衷是模拟现有的实体机器人硬件;因此,课程仍保留了将程序下载并在实体机器人上测试的功能,供具备相应硬件条件的教师使用。尽管部分教师可能利用了这一功能,但我们确信这些实体机器人活动仅作为补充,并未构成教学的主要部分。
2.2 材料
2.2.1 机器人编程课程
该在线机器人课程由卡内基梅隆大学和Robomatter开发,包含一系列使用独特编程语言ROBOTC图形化的机器人编程课时。ROBOTC图形化基于现有文本版的ROBOTC编程语言(见图1(a)),该语言专为更高级的机器人技术学生设计。然而,ROBOTC图形化采用图形化界面,旨在支持初学者学生,重点在于编程的整体逻辑,同时弱化传统编程语言中特定的语法要求(见图1(b))。
该课程材料充分利用了机器人竞赛的吸引力,同时强调特定编程技能的实践。本课程包含四个教学单元:编程入门、基本运动、传感器和程序流程(见表1)。每个单元内的课时按顺序安排,以帮助学生逐步理解基本编程
表1. 课程单元及其课时数量与涉及的内容主题
| 单元名称 | 课时活动 | 涉及的通用主题 |
|---|---|---|
| 编程入门 | 4 | 1使用ROBOTC配置您的计算机 系统要求和配置 ROBOTC平台操作教程 平台 |
| 基本运动 | 6 | 16测量(例如,厘米、度、 转数) 基本前进运动命令 基本序转列向命令序列 |
| 传感器 | 10 | 19传感器在机器人中的应用 带不等式的方程 布尔逻辑 编程中的如果‐那么条件语句 在 编程 |
| 程序流程 | 10 | 18重复和无限循环 编程中的if‐else条件语句在 重复编决程策(if‐else嵌套于 循环内) |
概念(例如,序列、条件和循环),以及在机器人学背景中出现的关键计算概念(例如,“编程是精确的”、“传感器、程序与动作”以及“理解系统”)中的编程技能。
在每个单元中,学生通过虚拟机器人问题解决任务逐步推进,使用ROBOTC图形化语言开发编程解决方案。学生通过Robot Virtual Worlds参与课程,这是一个模拟的3D游戏式虚拟环境,旨在突出机器人技术的编程方面,同时提高学生的兴趣和参与度(见图2)。
学生可以在三维虚拟平台中使用模拟机器人对模块化编程解决方案进行迭代测试。最后,这些代码被重用并“重新组合”(布伦南和 Resnick 2012年)来创建针对更复杂虚拟挑战的复合解决方案(见 图3),在这些挑战中,学习者必须运用先前的编程知识解决突出问题,强调计算思维原则,如抽象、分解和系统思维。
通过在虚拟环境中呈现机器人技术挑战,该课程减少了机械错误的影响,而机械错误常常使初学者感到沮丧,并可能分散他们对基础编程概念的注意力。这一特点使编程学生能够专注于更高层次的计算原理。在虚拟环境中模拟机器人运动也反映了当今机器人工程师的常见做法。参与这一过程为学生提供了通过参与专业群体的真实实践来学习的机会(Lave 和 Wenger 1991)。虚拟机器人比实体机器人成本更低,使得该课程的优势能够惠及更广泛的人群,尤其是在实体机器人课程费用过高而难以承受的地区。此外,Liu 和 Shoop (2013)的一项早期研究发现,使用该技术早期版本的学生在编程内容上的学习成效与使用实体机器人的学生相当,但所需时间更短。
课程材料的设计体现了建构主义教学方法,学习者通过使用范例、支架式教学和反思来构建日益复杂的程序。每节课以一段机器人执行重要现实任务的视频开始;随后要求学生为他们的机器人编写程序,以解决类似的任务“游戏板”版本。这设定了主题领域、任务及任务情境,使教师和学生能够“达成共识”(即建立主体间性(Puntambekar 和 Hubscher 2005))。此外,这种方法将课程重点放在学生对问题解决方案的构建上,要求他们深入理解必要的编程原理(帕佩特和哈雷尔 1991)。
一系列教学视频通过逐步指导学生如何编写一组相关机器人行为的代码(但不提供主要挑战的解决方案),帮助学生入门。这些
表2评估中测量的计算思维结构、题目数量及示例题目描述 s
表2 计算思维构念、题目数量及示例题目描述
| 计算思维 构念 | 数项量目数 | 示例项目描述 |
|---|---|---|
| 开发算法 | 4 | 通过补全缺失的步骤或正确组合两个算法来开发算法 步骤或正确组合两个算法 |
| 评估算法 | 7 | 确定一个算法是否能够完成该 任务,或识别出其中的错误或低效之处 |
| 发展抽象能力 | 3 | 描述一个算法或一段代码将如何 需要进行调整以应对引入 一个新的变量 |
| 文档与流程 | 3 | 识别迭代开发的流程, 数据收集 ,和文档 |
视频采用多种多媒体方法来减少外在认知处理、管理必要认知处理以及促进生成性认知处理(Mayer 2008)。例如,视频鼓励学习者通过暂停视频来自定进度(使其能够管理认知处理过程),并采用对话式语调(与叙述者建立社会伙伴关系感,从而激励学习者更努力地理解叙述者所表达的内容)。这些特点使观看者能更有效地加工和理解视频中传达的信息。相关行为视频与挑战任务之间的有意义联系虽被强烈暗示,但仍留给学习者自行构建。
本课其余部分的结构采用部分支架式方法(Puntambekar 和 Hubscher2005),以帮助学习者构建解决问题任务的解决方案。视频作为直接教学的锚点,引导一系列难度逐步增加的虚拟挑战(例如,“检查你的理解”问题,进而到小型挑战,最终到章节级挑战)。直接教学在后续步骤中逐渐减少(要求学习者更独立地应用技能),并且也在不同课时之间逐步减少(例如,在早期课时中使用简化的运动功能,而在后期课时中则要求控制独立电机)。总体而言,这些资源为教师提供了一条连贯的资源链,以支持具有不同初始能力的学习者,帮助他们逐步发展理解,达到能够构建最终挑战解决方案所需的水平。
2.2.2 计算思维
计算思维的评估通过在线课程平台分发给学生,作为对在这些教室中测试的在线机器人技术课程进行评估的一部分。在本报告所涉及的研究中,创建了三个不同的评估版本,每个版本使用不同的情景来呈现17道结构上同构的计算思维问题,仅对题目进行了轻微调整以适应各个情景的合理性(参见附录A中的样例评估题目)。不同版本的目的是允许对同一学习者进行纵向评估,同时避免较大的重复测试效应。评估题目由17道多项选择题组成,用于测量学生对计算机科学原理的理解,例如算法开发、迭代和布尔逻辑(见表2)。每道题目满分为1分,总分范围为0到17分。这些评估中17个题目的阿莫尔θ系数为0.77。阿莫尔θ系数类似于克朗巴哈α系数,但更适合用于二分数据(题目正确或错误)。阿莫尔θ系数值大于0.7被认为“足够”,可用于证明内部信度。
每次评估都呈现了两个现实世界情境。第一个情境评估了学生在相对非机器人背景下的计算思维概念理解情况
3 研究1:试点项目与初步评估
3.1 样本
我们的初步研究对象是宾夕法尼亚州西南部一个郊区学区的一组六年级学生(N= 123)。样本在性别上分布相对均衡(男性 = 52%,女性 = 48%)。该样本来自一个以白人为主(99%)且符合免费或减价午餐资格的学生比例相对较低(12%)的学区。一名教师自愿参与本研究,并在同一学期中向五个班级的所有学生讲授相同的课程。所有课程均为40分钟,每周5天。
3.2 过程与分析
前测在学生五年级学年结束时进行,即完成基础运动单元后(尚未接触更复杂的内容)。在接下来的学年中,学生作为六年级学生参加机器人课程,此次从传感器单元开始学习,并继续学习直至完成程序流程单元。在使用该课程参与为期一学期的机器人课程后,学生接受了类似的后测评估;后测等值性在后文讨论的第二项研究中得到验证。采用配对样本 t检验来确定前后测之间是否存在显著差异。
3.3 结果
结果显示,t检验表明前测和后测分数之间存在显著差异,t(122)= 5.44,p<.001,d= 0.57。就我们扩大计算思维普及的目标而言,值得注意的是,这种提升在性别上并无显著差异;男女学生之间的前测t(121)= 0.73,p=.47,或后测t(143)= 0.05,p=.96,均无显著差异(见表3)。需要注意的是,在本项初步研究中,课程实施时间的延长可能会增加效应量。我们也不清楚是否有相当数量的学生在前后测评估期间的暑假参加了机器人拓展活动(例如夏令营、机器人竞赛团队),这可能会影响后测所观察到的成绩提升。然而,我们认为所发现的结果在这项初步评估中已具有足够意义,值得进一步研究该课程与计算思维评估成绩提升之间的关联。
表3. 研究1中六年级学生前后测均值(按性别),含标准差、样本量及均值差异的95%置信区间
| 评估 | Pre | Post | 95% 置信区间为 均值差异 |
|---|---|---|---|
| M | SD | n | |
| Male | 6.1 | 3.9 | 64 |
| Female | 6.6 | 3.1 | 59 |
| Total | 6.3 | 3.5 | 123 |
4 研究2:评估验证与学习成效
4.1 样本
研究2的样本包括来自宾夕法尼亚州西南部四所学校的多个机器人课堂中的六年级、七年级和八年级(N= 441)学生。这些学生分布在四个郊区学区的26个不同机器人课堂中,性别分布相对均衡,男性略多(56%),女性占44%。这些学区的学生群体以白人为主(87%–99%),免费或减价午餐资格比例处于中等范围(5%–35%)。参与研究的四位教师自愿加入本研究,并在他们常规的机器人课堂中使用测试工具及相关的在线课程。所有课堂时长介于40至60分钟之间,每周上课5天。大多数课堂时段持续约5到7周,平均为34个上课日。这些教师均接受了约32小时(约4天)的专业发展培训,内容涉及课程的实施。
4.2 程序与分析
4.2.1 计算思维评估
在前测中,学生被随机分配到计算思维评估的三个类似版本之一(“版本A”、“版本B”或“版本C”),之后在后测中则被安排参加另一个不同版本的测试。前测在使用在线课程材料开始教学之前进行;后测在课堂教学周期结束时进行,该周期持续5到7周。对于前后测,若学生的作答中至少一半题目未完成,则该数据将被排除在分析之外,因为收集的信息过少,无法做出有效推断,且可能存在其他影响因素(如出勤率、参与度)影响学生的作答。如果学生完成了超过一半的题目但部分题目未作答,则这些未答题目记为零分。
首先,使用单因素方差分析对不同版本的评估数据进行分析,以确定计算思维评估的版本A、版本B和版本C在前测成绩上是否存在统计学上的显著差异。接着,匹配学生的前后测数据,并进行配对样本t检验,以确定在所有年级水平上,学生前后测成绩的个体提升是否存在显著差异。最后,进行协方差分析,检验学生完成课程额外单元的情况与前后测学习成效之间是否存在显著关联。效应量以科恩d表示,采用传统的阈值:小效应(d=.20)、中等效应(d=.50)和大效应(d=.80)(Cohen 1992)。
4.2.2 进度
进度是根据作业和形成性测验的完成情况来衡量的,然后汇总为每个单元的总进度得分。由于课时中包含可选和重复内容,完成一个单元并不要求完成所有可用活动。如果学生完成了某个单元内特定课时50%以上的可用活动,则视为该学生完成了该特定课时。由于某些单元提供了多次练习相似课时的机会,且教师可能会让学生跳过这些内容,因此完成了一个单元中至少40%的课程的学生,被认为已充分参与了该单元的概念学习,因而被视为已完成该单元。随后,进度被重新编码为一个有序变量,表示在课程中的逐步进展(引言 = 1、基本运动 = 2、传感器 = 3 和程序流程 = 4)。
表4. 研究2中的前测与后测均值,含标准差、样本量及均值差异的95%置信区间
| Pre | Post | 95% 置信区间为 均值差异 | |
|---|---|---|---|
| M | SD | n | |
| Total | 7.2 | 3.1 | 364 |
引言单元主要包含与编程无关的教学内容,例如如何设置软件以及如何浏览课程菜单(参见表1)。因此,在教授完第一组学生后,许多教师认为他们已具备足够的理解,决定在后续的学生团体中跳过此单元。因此,在此处呈现的分析中,仅针对基于内容的单元(基本运动、传感器和程序流程)报告进度测量结果。报告无进展的观察数据仅用于检验重测效应。
4.3 结果
4.3.1 测试版本的等效性
在初步分析中,对所有完成测试的学生的前测成绩进行了单因素方差分析(n= 426),以通过比较参加版本A(n= 97,M= 7.6,SD= 3.2)、版本B(n= 208,M= 7.1,SD= 3.2)和版本C(n= 121,M= 6.8,SD= 2.8)的学生相对表现,来确定不同评估版本的可靠性。结果表明,各测试版本之间的均值无显著差异,F(2,425) = 1.96,p=.14。因此,由于这些版本似乎是计算思维构念的相对类似测量工具,在后续分析中将合并三个版本的结果。为了检验重测效应的可能性,我们还考察了报告在课程中未取得进展的n= 26名学生之间的前测/后测差异。总体而言,该组学生的前测成绩略低于完成了课程的学生,t(326) = 2.06,p<.05,d= 0.40,但其他方面具有可比性(即来自与取得进展的学生相同的教室和学区)。未取得进展组的结果显示出边缘性的提升,t(26) = 2.02,p=.054,d= 0.40,代表存在较小的重测效应。然而,如后文结果部分进一步解释的那样,该效应量与基本移动单元的效应量相当,并不能解释传感器和程序流程单元中观察到的更大提升。
4.3.2 总体增益
接下来,我们通过检验四所学校中完成前后测的配对样本学生,测试了从前测到后测的总体均值差异(n= 364)。结果表明,从前测到后测存在虽小但具有统计学显著性的总体均值增益0.57分,t(363)= 3.62,p<.001,d= 0.18(见表4)。
尽管本研究发现的前测/后测学习成效的总体均值差异效应量相对较小(d= 0.18),与研究1中发现的中等效应量(d=0.57)相比有所降低,但我们认为,本研究引入的学生范围更广,以及实施时间较短,可能是导致前测/后测学习成效降低的原因。需要指出的是,研究1的学习成效是在一个完整学期加上暑假期间观察得到的,而研究2的实施仅持续了5 到7周。因此,研究2中的学习成效可能较低,部分原因也在于其中包括了仅完成较基础单元的学生。后续分析进一步考察了不同课程进度下的后测成绩,以了解在研究2中,学生完成更多课程单元是否与不同的学习成效相关。
4.3.3 根据课程进度的平均增益
在此分析中,仅包括已完成入门设置课时之外内容的学生,n= 315。在这些学生中,n= 142人完成了基础运动单元,n= 165名学生完成了传感器单元,且n= 8名学生完成了最终的程序流程单元。对这三个组的前测成绩进行方差分析发现存在显著差异,F(2, 296)= 8.09,p<.001。事后图基检验显示基础运动组与传感器组之间存在较小差异(p<.05),以及基础运动组与程序流程组之间也存在较小差异(p<.05)。传感器组与程序流程组之间的差异不显著(p=.45)。这些基线差异促使我们在后测成绩上使用协方差分析,以调整这些已存在的差异。该协方差分析模型检验了学生在课程中的不同进度水平是否导致后测成绩上的显著差异,同时控制了前测成绩的影响。协方差分析模型显示,课程进度与后测成绩之间存在显著关联,F(2, 258)= 8.14,p<.001(见图4)。
事后图基检验显示,基本运动与传感器的后测成绩之间存在约1分的显著差异(p<.01水平,d=.34),传感器与程序流程之间的后测成绩也存在约2.4分的显著差异(p<.05水平,d=.86)。基本运动与程序流程之间的后测成绩差异约为3.4分,在p<.01水平上具有显著性(d= 1.16)。因此,尽管完成课程中每个新增单元的学生团体均表现出显著进步,但基本运动单元和程序流程单元的学生团体之间的成绩差异最大。此外,图4 还显示了前测均值水平,可以看出仅完成基本运动单元的学生没有取得进步,完成传感器单元的学生取得了适度进步,而完成程序流程单元的学生则取得了显著进步。这一模式符合预期,因为基本运动单元涉及的复杂性较低,而程序流程单元对计算思维的要求最为集中。重要的是,随着课程进度的不同所表现出的进步差异排除了观察到的成绩提升仅仅是由于重测效应(例如前测对评估结构的接触)所致的可能性。
5 一般讨论
在所报告的两项研究中,我们为日益增多的关于新教育技术的文献做出了贡献,这些技术旨在提供能够教授可迁移的计算思维的编程教学思维技能。具体而言,我们评估了特定在线虚拟机器人课程的实施与学生在相似和不同编程情境下的计算问题解决能力之间的关联。对研究1和研究2中前测到后测的均值进步进行分析的结果显示,在非机器人技术的计算思维任务上,整体表现取得了相对较小但显著的进步。然而,当根据学生在课程中取得的进度来考察这些影响时,我们发现,那些达到内容更丰富的传感器和程序流程单元的学生团体表现出显著更大的学习成效。因此,尽管学习环境强烈强调特定情境(即机器人技术),学生仍能够掌握可迁移的技能。
5.1 局限性
本研究的结果受到多种因素的限制。首先,缺乏随机分配对照组以及进度与提升之间的相关关系,并未解决因果关系问题。因此,我们无法确定学生成绩的提高确实是由接触该课程所导致的。例如,可能存在其他未观察到的因素,如教师开发的补充材料,或其他学生特征(如年龄或出勤率),这些因素可能影响了学生在课程中的进展程度以及后测得分。此外,教师将实体机器人技术融入虚拟课程的程度可能存在很大差异,因为各学区对这些资源的获取条件不同,且部分教师可能在学校中参与了实体机器人团队。事实上,未来对该课程的研究有必要收集教师反馈,以明确在实施过程中所使用或开发的额外教学材料和支持是否也促进了本研究中所观察到的课程成功实施。
5.2 实际考虑
我们的研究结果提出了一个问题:与研究1中相对受控的环境不同,研究2中许多实施该课程的教室无法持续推进到更基础的单元之后,通常在未完全完成基本运动或传感器单元之前就停止了。虽然这说明了我们数据的真实世界有效性,但这一现象本身表明,在实现广泛实施之前,还需要解决其他问题。在整个研究2实施过程中进行的非正式探索性课堂观察提出了一些可能的假设。
首先,要达到这些概念更丰富的单元,一个主要障碍可能是教师的学科知识,以及缺乏针对高阶编程概念教学的具体教学准备。在美国,包括本研究开展的宾夕法尼亚州在内,很少有州要求教师获得特定的计算机科学认证,而像机器人技术这类实际教授计算机科学和编程技能的课程,通常被归入一般性的技术教育选修课,例如商业或职业、技术与农业教育(Guzdial 和 Ericson 2014年)。例如,实施研究2课程的许多教师是依据宾夕法尼亚州的技术教育认证资格执教的。美国教育考试服务中心2015年推出的技术教育普拉克西斯认证考试中不包含任何专门针对计算机编程的问题,而是主要评估诸如制造与建筑技术,或面向用户计算应用(如如何操作软件程序)等主题(美国教育考试服务中心 2015)。非正式观察显示,研究2中的教师普遍按线性顺序推进每个活动、课程和单元,关注的是完成每一部分内容,而非强调每节课所针对的特定编程概念的概念性理解。此外,对于在较复杂的编程挑战中遇到困难的学生,教师所提供的大部分反馈由教师先前开发或课程中提供的示例解决方案,对学生代码进行逐行比较组成。
我们假设,由于教师本身是初学者程序员,他们对编程基本原理的理解不足,可能会降低其察觉和利用“正确”代码与学生代码之间普遍结构相似性的能力(Catrambone 1998;Kurland 等人 1986;Robins 等人 2010)。此外,教师对高要求的计算机科学教学所涉及的教学要求的理解也可能停留在表面层次,而非这些改革课程材料的结构特征(科伯恩 2001;斯皮兰 2000)。这可能导致教师关注机器人编程任务的表层特征,延长实施时间,并阻碍教师引导学生进入课程中更具挑战性和丰富性的复杂单元,尤其是在他们对自己能力缺乏信心的领域。关于基于问题的学习和技术丰富的环境中教师专业发展的现有研究提供了一些建议,说明如何通过基于内容的协作探究(CBCI)支持教师实施改革课程,使教师通过参与真实的课堂体验共同构建自身的教学内容知识(Doppelt 等人 2009;Harris 2011;Zech 2000)。基于内容的协作探究(CBCI)的专业发展经历可以在转变教学方式方面促进教师的编程能力,使其摆脱机械式的逐行编程,更加注重底层的计算思维实践。还需要进一步的研究来更好地理解这些以及其他阻碍学生进入更复杂单元的教学障碍。
在研究2中实施该课程期间,课堂中观察到的第二个模式是教师间歇性地使用实体机器人来补充虚拟课程。教师在课堂中融入实体机器人技术的程度及其提供的使用理由各不相同;然而,出现了两个主要主题。首先,许多教师声称使用实体机器人提高了学生参与课堂的参与度和动机。其次,他们认为在相似情境下通过实体机器人进行编程技能的额外练习带来了学习成效的提升。越来越多的文献表明,教师对技术、教学法和内容的信念与其有效整合技术的能力之间存在关联(葛 2001;Kim 2013;Wang 2004)。因此,许多教师可能会继续在整个虚拟课程中穿插实体机器人活动,以此作为学生重新参与的一种手段,但这可能会进一步增加学生完成包含高阶计算概念单元所需的时间。购买实体机器人硬件的额外成本也降低了服务不足的学生获得此类课程的机会。从本研究收集的数据尚不清楚将实体机器人与虚拟课程结合使用的差异对学生学习产生了哪些影响。尽管之前关于类似虚拟机器人课程的研究显示,参与虚拟或实体版本课程的学生在学习成效上没有显著差异(Liu 2013),但其他研究人员提出,实体机器人所具有的具身特性可能为编程和数学初学者带来学习优势(布鲁纳和安格林 1973;西尔克 2009)。还需要进一步研究来证明,针对该特定编程课程,实体或虚拟呈现方式是否会导致计算思维能力提升方面的类似差异,以及在混合实体与虚拟机器人环境中是否确实能观察到更高水平的动机和参与度。
最后,一个相关的假设是,许多班级难以达到更具概念丰富性的编程单元,是因为尽管在机器人学背景中呈现编程内容可能有助于保持学生的更高参与度,但涉及机器人特定功能的课程活动往往耗时较多,从而挤占了更具计算深度的编程活动时间。即使在虚拟环境中,诸如传感器功能和电机端口位置等机器人特定内容也可能使学生的注意力偏离编程技能。转向机器人操作中更机械化的方面,并在课程中增加额外时间,而不一定增加学生对计算思维内容的接触。例如,从教学角度看,理解触摸传感器如何在机械上接收并向机器人传输数据,可能不如理解该传感器接收到的数据如何在程序中表示为布尔值更能有效地向学生介绍关键的计算思维概念。与许多跨学科课程一样,某些课时和单元部分可能更侧重于教授某一学科的关键内容而非另一学科的内容,其目标可能是提升学生参与度、特定内容理解或更广泛的技能与实践。因此,在开发和准备跨学科课程时,应选择并优化那些直接针对关键概念的单元。具体而言,在已测试的课程中,若能简化传感器单元中包含的传感器数量,则可能有更多学生能够进入程序流程单元。
6 结论
目前,计算机科学领域内正在努力扩大中小学教育阶段的计算机科学学习机会,最近在美国宣布的全民计算机科学计划便是这一努力的最新体现,其背后动因来自该领域对经济和公平性方面的关切(Ericson 2014;Goode 2011)。我们的研究表明,使用可视化编程语言和模拟机器人等新技术在具体情境中教授编程的课程,也可能有助于学生掌握可迁移的计算机科学技能。进一步研究这些技术特性如何与其他机器人学习环境特征相互作用——例如引入实体机器人以及不同水平的教师教学支持——将有助于深入了解如何构建丰富且真实可信的计算机科学学习环境,从而为21世纪的计算机科学学习者实现雄心勃勃且富有动态性的学习成果。
虚拟机器人编程提升计算思维
1960

被折叠的 条评论
为什么被折叠?



