◇黑龙江大学教育科学研究院 黄 捷 张 红
21世纪网络技术飞速发展,人们的生活进入网络信息化时代,大数据分析与创新性思维成为社会发展的重要助推器。STEM教育理念的快速发展有效地推进了中小学生编程教育进程的推进。我国中小学编程教育在发展过程中存在很多问题,例如重视程度不够、师资力量贫乏等,因此如何促进我国中小学编程教育常态化发展成为新时代学校教育工作的重点。以STEM教育理念引领中小学编程教育更是新时代科技教育发展的重要形式。
STEM教育是是科学(Science)、技术(Technology)、工程(Engineering)和数学(Mathematics)的四个单词首字母的大写组合形式。STEM教育理念的出现打破了不同学科之间的屏障,加强了学科间的交流与融合。STEM教育的最终目标在于培养学生的多维能力,使不同方面的能力协调发展,构建系统化、理论化的思维模型。其次,STEM教育理念要培养综合性人才与全面发展的人,为社会发展提供强劲的力量。教育改革进程的不断深化使得应试教育的弊端不断地暴露出来,“重分数轻能力”的现象普遍存在,但这又与促进学生全面发展的理念相矛盾。STEM教育理念有效地化解了这一矛盾。编程教育是STEM教育的一部分,是针对于编程教育作为信息素养培养的一种教育形式,因此STEM教育理念能够有效地指导编程教育的建设。
编程教育作为计算思维培养的组成部分,是科学技术领域的一个重要分支。随着科学技术与人们生活的交互融合,人工智能在一些重要领域上逐渐地取代了人工服务,促进了劳动市场的更新换代,科技引领社会发展是未来世界发展的主要趋势,因此能够熟练地掌握编程语言是对未来人才基本素养的要求。编程教育正逐渐朝着低龄化的趋势发展。国际上很多中小学校的教学中编程教育元素浓厚,大部分学生在教学过程中都能接触到基础的编程知识,例如英国威尔士的圣朱利安小学的学生利用编程制作了计时器,并且应用到实际检测环节。中小学生编程教育旨在帮助学生掌握一项基本技能,而不是是学生聚焦于科技产品的娱乐化功能。编程语言的有效掌握能够提高个人竞争力与思维逻辑能力,为学生未来的发展奠定良好的基础。
随着科学技术以及数字化工程不断地深入人们的生活,计算机技术、网络技术与政治、经济、文化高度交融,人们的出行、生活变得快捷简便,编程教育逐渐渗透到各个领域的发展中,例如餐饮行业的新式机器人创新服务、银行的机器人向导服务等。其次,编程教育能够有效地缓解计算机人才匮乏的情况,为社会各行业提供综合性科技人才,是国家人才竞争的有力武器。进入21世纪以来,国际之间的竞争转变为科学技术以及信息资源竞赛,编程教育的学习能够为国家网络安全保护提供坚实的屏障,提高国家、社会以及公民的生活品质。
2017年国务院出台《新一代人工智能发展规划》,文件中明确指出人工智能建设的重要作用,编程是人工智能发展的基础单元,因此促进中小学生编程素养的提升是教育政策的具体实施。在近几年的PISA测试中,我国参赛学生的科技素养取得相对平稳的成绩,但实际基础常识与动手能力相较于发达国家,还存在一定的差距,这同样也是中小学编程教育实施的必要性之一。在数字化高速发展的今天,中小学生计算机思维以及信息素养的加强,不仅对国家的发展有积极作用,同时也有利于个体价值的发挥,为个人未来生存发展奠定基础。推动中小学编程知识的传播有利于探究新的教育内容,丰富教育实践经验。
编程教育的初始教学要建立在学生的已有科学素养之上,使学生成为课程教学的中心,教学内容要从学生的需求出发。教师在教学过程中,要通过示例或者教具一步一步将学生带入教学情境中。编程课程的开发要能激发学生的兴趣,鼓励学生主动探索科技世界,为学生提供符合其兴趣以及实际需求的课程内容,根据学生实际的课堂动态及时调整教学内容。
坚持“寓教于乐”的教学原则不等同于增强课堂教学的娱乐化功能,而是利用竞赛、游戏等具有趣味性、竞争性的活动形式进行教学,这种教学方式有利于学生接受新知识,激发学生主动学习、勇于探索的科学精神。学生通过合作与交流,轻松愉快地加入到探索互动中。
编程教学要遵循学生思维发展的过程,符合学生此阶段的接受能力。任何事物的发展与完善都需要一个循序渐进的过程,由于编程教育知识的难度系数较高,因而学生在学习过程中,需要不断积累编程教育基础知识。教师通过图片化与可视化的简单分解,逐渐加强课程的难度,使学生通过合作与创新,设计出属于自己的研究成果。
教师要注重对于知识整体性的把握,帮助学生形成系统化知识架构,为学生未来的发展打下基础,提高自身的信息素养,有利于以后知识的一个衔接过程。全国研究生教育大会明确指出,2021年扩招的招生规模中会增加人工智能专业,说明社会对高科技人才的需求量逐渐提高,同时也证明了在中小学开设编程教育的必要性。通过初等教育、中等教育以及高等教育的衔接,帮助学生建构完整的编程知识体系。
2014年爱沙尼亚开展了编程教育并逐步推行至全国;日本将编程教育写入教科书;2013年,美国设立了“编程一小时”项目,编程教育纳入到K-12教育体系的基础教育发展中。很多国家都已将编程教育作为青少年基础教育的重点教学内容。我国的编程教育起步比较晚,在编程课程的教学设计、师资队伍、课程内容设计等方面都存在着许多不足。由于传统教育模式以及日常考试机制的影响,编程教育虽应成为日常教学活动中的一门课程,但是并不被广大家长所认可,家庭培养目标的重点提升学生的成绩,而不注重学生科技素养的发展。因此,中小学生编程教育课程的设置首先要加强家长、学生以及社会公众对编程的理解,“学会编程”是未来教育发展的必然趋势,也是未来人才竞争的基本技能之一。只有从各个教育主体入手,才能真正地促进编程教育的不断推进。
从教学目的看,编程教育应培养学生的图形化思维、可视化能力、逻辑思维能力以及对抽象化事物的感知能力,编程教育强调理论与实践相结合,从教学内容看,首先应加强跨学科知识与教学内容的联结,注重课堂教学的趣味性、可操作性,为学生创建易于探索的教学情境,注重编程知识的实际操作过程,改变传统的灌输教育模式。从课程内容选取上,应兼顾编程教育的难度、广度与深度,而不是基本办公软件的熟练操作。课程开发要注意根据地区差异设定,逐渐推动编程教育纳入到基础教育过程中。
编程教育资源较为丰富,能够为学生提供个性化的选择。学校不仅要加强教学资源的开发与利用,还要为学生创设能够展示自我的平台,例如实验平台、趣味竞赛、综合实践活动等。例如山东潍坊市设置了未来教育体验中心,发挥了人工智能在教学中的重要推动作用。其次,开放图书馆、电子图书室等资源,开展开放式社会讲座,为学生提供更多获取编程知识的途径。
编程教育的教学过程具有一定难度,因此应加强专业化师资队伍的建设,为学生提供个性化的教学,促进专业化教师编程课程知识培训,定期举办研讨会,交流编程课程教学经验,提高区域教学质量,形成具有个人特色的编程教育课程体系。编程教师的培训相比于基本学科教师的培训更为严格,并且培训时间较长,因此可以采取校企合作、共享高校教育资源等形式聘请专业化的教师。在校外教师进行教学时,校内教师也要参与到教学中,两种形式的培训同步进行,在有限的时间内提升教师的教学能力。
国外许多学校都将科技因素融入到教学中,并且为每门课程制定了适合于学科教学的专属电子教具。例如芬兰的编程教育的特色是“计算思维”、“现象教学”与“游戏互动式”,教师通过互动式游戏教学提高学生学习积极性,主动地将学生带入到教学情境中。编程教育的渗透不是简单的知识相加,而是要努力使其成为各个教学环节的一部分,让学生真正感受到科技技术为教学带来的乐趣。因此在实际教学过程中,不仅要创新教学内容,将编程教育纳入到日常教学中,还要将编程技术融入到教学手段中,实现二者的同步融合。