齐馨蕾
上海师范大学教育学院 上海 200234
计算思维的重要性不言而喻,众多学者已经进行了充分的探讨。在计算思维不断发展的过程中,其落脚点逐渐从高等教育转移到k-12教育中[1],呈现出低龄化趋势。新兴技术的发展也为在基础教育阶段培养计算思维创造了条件,许多研究者在小学高年级信息技术课堂中使用scratch、App Inventor等软件培养学生计算思维并取得了丰富的研究成果。然而,如何在小学教育早期引入计算思维还值得我们进行探索。实物编程作为一种无屏幕、互动性强、操作简单的编程形式受到了部分研究者的青睐,被认为是一种符合儿童计算思维发展需求的教学工具。本研究中对于实物编程在小学低年级群体中的适用性进行深入分析,提出了在实际教学中应用策略。
我国2022年颁布的《义务教育信息科技课程标准》中指出计算思维是信息科技课程的核心素养之一并将计算思维界定为个体运用计算机科学领域的思想方法,在解决问题的过程中涉及抽象、分解、建模、算法设计等思维活动[2]。由此可见,计算思维已经成为我国基础教育关注的重要内容。Wing强调了在教育早期引入计算思维的重要性:“如果想确保所有人都有一个理解和应用计算思维的共同而坚实的基础,那么这种学习最好在儿童早期进行”[3]。计算思维作为信息化社会人人都应该具备的基本素养,需要在教育早期就开始培养,同时还要充分挖掘应该发展学生哪些计算思维技能,比如Bers提出的7个强有力的计算思维概念,适合小学早期儿童学习[4]。
实物编程(Tangible Programming)最早是由学者铃木英之、加藤浩提出的,他们尝试将编程指令封装在正方体块中,儿童通过排列不同的编程指令方块编写程序,编程结果通过电脑屏幕呈现出来。后来随着技术的不断进步和发展,实物编程脱离了电脑屏幕,它将图形化编程语言简化、实物化,封装于儿童易于操作的积木块中,这些积木块被赋予不同的属性或功能[5],如循环、条件、传感器等。学生通过排列组合不同的编程积木块来设计程序,这种输入方式使得没有电脑使用经验的学生也可轻松地进行编程,编程结果通常是以对应物理执行器的运动或反应呈现出来。实物编程的出现满足了低龄学习者所需的计算思维环境和计算思维工具低门槛和高上限的特性,学生在上课的过程中能够获得良好的学习体验。目前关于实物编程还没有明确定义,在本研究中将其视为一种通过实物将抽象的计算思维概念具体化呈现出来的一种方式。
1.3.1 实物编程与小学低年级学生认知发展相契合。计算思维作为一种高阶思维能力,其发展与培养应当是一个循序渐进的过程[6]。根据皮亚杰认知发展阶段理论,小学低年级学生处于具体运算阶段初期,这个阶段的儿童正逐步形成抽象思维,皮亚杰认为该时期的思维活动需要具体内容的支持。实物编程能够为学生提供有形的编程环境,其思维过程通过物理执行器在现实世界中展现出来,学生可以兴奋地看到他们头脑中的抽象思维具体化的过程。
1.3.2 编程指令简化,给予学生及时反馈。实物编程将复杂的文本编程语言用儿童可以识别的符号代替并封装于实物化的编程指令中,学生在学习后可以轻松掌握对应编程概念和使用技巧,有利于他们创造性地完成学习活动。这种有形的编程方式在输入和输出过程中具有即时性。即时的视觉反馈能够让学习者观察到编程过程中存在的问题,不断测试他们的想法,当学生看到结果与自己的设想一致时能够获得愉快的学习体验,这对低年级的学习者来说十分有吸引力。
1.3.3 互动性强,有利于小组合作。实物编程相较于其他编程形式的独特之处体现在互动性。这里所说的互动一方面体现在学生与编程工具之间的互动,因为实物编程的编程指令和执行体都是实物化的,学生在编程过程中可以获得真实的交互体验。另一方面体现在学生与学生之间的互动,处于具体运算阶段的儿童在社会情感方面渴望与伙伴进行交流协作,并愿意接纳别人的观点,实物编程刚好为学生之间的协作搭建起桥梁。
实物编程被视为促进计算思维发展的媒介,除基本的编程指令外,其大多还自带有传感器、拓展性平台等,为学生创造性地设计项目或完成任务提供了条件,因此许多研究者在探索实物编程教学的过程中提出了很多有创造性的想法。Tengler K等人设计了基于机器人的讲故事活动,运用讲故事的方法,开发一个可行的学习环境。学生的任务是阅读或者编造一个故事,通过编程将故事情节创造性地展现出来。这种方式将编程语言、视觉语言和叙事语言编程语言结合起来,有效促进学生计算思维发展[7]。陈洁借助Matatalab实物编程机器人设计我国本土化的实物编程教学资源,构建了基于计算思维的小学实物编程课程培养框架,通过准实验研究验证课程实施效果[8]。目前关于实物编程的研究正在不断丰富,如将实物编程与基于项目的学习、游戏化教学、STEM教育等相结合。
本研究使用PP9实物编程机器人套件作为主要的教学工具,结合任务驱动法和工程设计过程设计以下教学策略,通过前期的文献梳理和教学实践过程中的经验和反思总结出如何将实物编程有效应用于课堂中来培养小学生的计算思维能力。
使用游戏、视频、讲故事等方式说明本节课的任务背景,将本节课的核心问题隐藏于学生感兴趣或者日常熟悉的情景之中,能够充分激发学生的好奇心和探究的积极性。教师在主动提出问题或者引导学生提问的过程应当循循善诱,可以先提出一个或者几个小问题逐步过渡到核心问题。
实物编程在创设情景方面也有独特之处,因为学生会自然而然地将实物编程机器人认定为自己的“伙伴”,更容易将学生带入问题情景中。以《送回实验包裹》这节课为例,教师首先借助一个视频引出本节课的任务:空间站实验室收到了一批最新的实验材料,小9作为空间站机器人助手需要将他们根据包裹颜色分类并放入对应是实验柜中。学生会站在自己就是实验室助手的角度上去理解与思考问题,不仅能够增强学生的体验感还能激发学生的兴趣。
任务的完成过程一般需要应用新的编程知识。在课程预实验阶段发现,独立探索积木块的使用规则对于低年级的学生来时还是有难度的,所以需要一个新知学习环节,教师带领学生一起认识新的积木块并讲解其使用规则。当学生学会了比较复杂的编程语句后,其他辅助功能如眨眼、唱歌可以让学生自己探索,因为这时的他们已经熟悉了部分积木块的使用方法,并积累了调试的经验,能够根据编程积木块上的符号自己尝试。
例如《送回实验包裹》的核心目标是学习条件语句和颜色传感器的使用。小朋友们使用小9时已经发现每当自己的手靠近小9时,它最前面的灯会变换颜色闪烁,大家都非常好奇是为什么?那么这节课中老师主动让小朋友们猜测一下它的作用。有学生会主动提出它像小9的眼睛,于是教师和同学们讨论关于人的眼睛看到的世界是怎样的?眼睛能够看到和辨别各种色彩有什么作用呢?机器人怎样才能看到这个五彩斑斓的世界的?由此引出颜色传感器的概念。
设计方案也是学生解决问题过程的关键环节,学生为实物编程机器人制定一个或多个行为方案,并满足任务中给定的条件。可以将一个大的任务分解为一个个容易实现的小任务。教师会将设计好的学习单分发给学生,作为辅助工具的同时能够记录学生解决方案的形成过程。在本环节中为学生构建自主探索的学习环境,充分发挥学生的主观能动性,学生以小组为单位开展学习活动,在讨论交流的过程中表达自己的想法同时要吸取他人的意见,将程序记录在学习单上,逐步形成本组的解决方案。
在本环节学生会创建一个程序,将编程语言借助实物机器人的行为表达出来。成功的前提是必备的编程语言知识和合理有效的问题解决策略。学生首先通排列组合编程积木块来编写程序,然后运行程序,观察小9的行动是否会达到自己的预期结果,运用调试的方法对程序进行修改完善。学生会发现设计方案中存在的各种各样的问题中或者在调试的过程中发现是否有更好的办法来优化自己的程序。
最后分享交流活动的目的是引导全班同学进行反思。在本环节学生首先能够将本组的学习成果展示出来,与大家分享。其次还需要认真聆听和观察其他小组的设计方案,思考本组方案的优势和不足之处。教师在整个过程中会进行点评,最后和同学们一起进行总结分析,促进学生思维发展。
现代社会信息科技的发展在一定程度上影响着教育教学形式的变革,实物编程是科技进步的产物,在促进儿童计算思维发展方面产生了积极的反馈,在教学实践的过程中不断创新和完善,未来研究方向应该聚焦于如何在课堂中整合这些工具并结合学生的认知发展特点来促进学生的计算思维发展。