我国中小学编程教育的发展路径及策略研究
2021-08-31张洁金毛玉刘凯
张洁 金毛玉 刘凯
关键词:智能时代;中小学;编程教育;STEAM;创客
1中小学编程教育的内涵和缘起
1.1编程教育的内涵
美国计算机科学教师协会(CSTA)和计算机协会(ACM)在对美国中小学计算机教育进行研究的基础上,于2011年制定了K-12计算机科学标准,将编程培训分为思维培养以及实践两个方面。而这一标准的主要目的在于让学习者通过学习编程语言以让他们的计算机思维程度以及解决问题的能力都能有所提升,但是,培养出他们的创新力才是这个编程教育的最终目标。因此,编程教学可以定义为一种通过学习编程语言来促进学习者的计算思维,从而增强批判性思维和解决问题能力的教育。
1.2编程教育的缘起与发展
其实,编程的教育方式和概念并不新奇。早在1980年,苏联的计算机教育者Irshoff就担任“文化理论”的职位。他认为“编程语言是第二种文化”,并主张将其作为学习使用编程语言发展数学技能的学生的重要组成部分。因此,有一段时间世界各地的中小学生都在传播编程教育。但是,在1990年,随着强调工具技术使用的“工具理论”的出现,人们逐渐转向计算机技术的实际应用。这导致了编程教育的衰落,甚至包括其局限性和排斥性,但现在它又回归了人们的视野。
作者大致对各国开始重视编程教育的主要原因进行了简要分析:
(1)近年来,STEAM培训和创客教育已成为不同国家教育中的热点,STEAM培训的浪潮席卷了世界。作为STEAM教育的早期倡导者,美国将Scratch编程软件视为STEAM教育内容的重要组成部分,受到了广泛的支持和欢迎,它还提供了一个全新的平台,可将编程课程带人人们的视野。同时,它使人们逐渐了解编程课程对中小学生的影响。
(2)就中小学生信息素养方面的培养来说,人们也逐渐知道了编程对于中小学生而言确实很重要,因为它可以帮助他们提供解决问题的能力。从根本上来说,“计算机思维”它是一种能力,而且融合了STEAM培训、艺术和人文科学等多个学科。跨学科的教育理念是一致的。通过编程,可以将其集成到数学和汉语等其他学科中。这不仅使学生获得了跨学科知识,而且还获得了系统性思维、创造性思维、分工和其他知识技能。这是学生取得成功必须要有的基本技能,这就是为什么编程教育如此受欢迎的原因所在。
2中小学编程教育中存在的问题
2.1编程教育领域中课程标准存在缺陷
孙丹和李艳联合发表了“国内外青少年编程教育的发展状况,研究重点、教育、包括智能时代中国编程教育的实施策略”,文中说,中国的编程教育起步较晚,从总体上来说,尚且还处于一种发展初期,它主要是行业主导的,而且并没有建立校内的课程制度。尚未在学校中深入研究中小学的教育编程,而且课程标准也不明确。负责程序设计教育的大多数教师都是初学者。他们在课堂上没有明确的教学目标,也不知道如何进行编程培训。
编程培训创建教育内容对于全面促进编程培训至关重要。近年来,许多程序课程和教育杂志的材料已发行。结果,青年编程教育教科书却还是从零开始创建的,现有教科书的设计是否与当前学生的身心发展相一致,没有专业评估。从可用的材料来看,他们通常专注于介绍和使用反映思维能力发展的特定编程工具。特别是极少有资料可用于“计算思维”培训中的程序设计教育。
2.2编程教育在中小学教育培训机构存在问题
根据初中人工智能课程调查数据的统计,有18%的学生说自己所就读的学校有与人工智能相关的课程,有25%的学生说学校也曾开设过相关讲座,有40%的学生说自己所就读的学校没有这类课程。2019年,我国教育部出版了《国家高中国家课程教育书籍目录》(它是以2017年的课程标准为参考来修订的),在全国范围内发行了5套“人工智能基础课本”,但直到2020年才出版,另外,它主要是基于公司开发的教材,这类教材并不适合教师使用。当前,大多数学校都没有系统地教授人工智能,虽然有些发达地区的学校开设了相关课程,但是课程和内容很少,并且课程系统尚未建立。不同地区的教育和研究机构创建了各种教科书,没有国家统一的人才培养引领方向,也未形成与国家未来发展战略相一致的全国统一教材大纲。
2.3中小学编程教育师资存在不足
大多数中小学教师认为,中小学学生的主要工作是学习语文、数学和其他学科以外的学科理论知识,并取得更好的学习成绩,至于像人工智能、编程等之类的学不学都无所谓,以后用得到的时候再去学就是,还有的甚至把编程课用来上其他学科的课,这严重影响了中小学的人工智能和编程教育的顺利发展。有很多的学生在毕业后甚至连一些基本操作程序都难以独立完成,从很大程度上来讲,这大大影响了编程教育进一步发展。
许多教授人工智能和程序设计的中小学教师受到传统教育方法的影响,都采取的是那种填鸭式的教学方法,这导致学生失去了学习兴趣,在学习上课时根本就听不懂,就像听天书一样,这也会使学生的未来发展受阻。
3中国中小学开展程序设计教育的路径思考与策略研究
3.1加快编程教育课程标准和内容的发展
高质量的教育内容通常需要多方协商才能共同创建。因此,具有国际视野的计划研究人员需要在宏观一级考虑课程标准的解释和关键内容的设计。在创建课程内容时,重要的是要考虑编程教育领域发布的课程标准,并反映内容各部分的水平和连续性。
我们应当要注意,当前在线学习的普及是年轻人学习编程的绝佳机会。作为传统面对面学习的补充,在线学习平台可以轻松克服时间和空间限制。因此,只要遵循在线学习和多媒体学习的规则,为编程培训创建在线内容也是研究领域之一。
3.2确保在中小学及相关的课外教育和培训机构中进行编程培训
2017年公布的“新一代人工智能发展计划”显示,在整个人工智能培训的总体环境中,编程培训需要逐步推广。浙江省将程序设计教育整合到高中信息技术领域,并具有适当的主题内容和评估机制,除浙江省以外其他地区虽在常规的高中教室提供程序设计教育,但未正式将其纳入高中课堂当中去。初中以下的编程技能通常仅通过扩大个别学生的课程或竞赛来提高,而没有建立全面的编程教育课程。
因此,在课程规划方面,中小学需要带头实施适合学校情况的编程课程实践。每学期严格执行编程培训。积极培训专职的编程班老师,同时开发适合学校的编程课内容。通过促进学校之间、学校与企业之间以及学科之间的教师之间的交流与协作,教师可以以此提高编程教学技能。
3.3加强中小学编程教育的师资培养和在职培训
对于教育技术(或计算机科学和其他相关专业)的预备教师应加强对编程语言、人工智能、机器人技术和创客教育的培训。为了更好地适应未来的青年编程教育,还应在预备教师课程的教学理论有关的最新标准解释和内容中增加编程教育课程。鉴于游戏的元素和机制是年轻人首选的学习方法,并且广泛用于国家和国际编程和教师培训课程,因此可以通过特定的教育游戏来实现教育游戏设计的教育内容。
一般来说,学校的编程老师都是由学校的计算机老师任教。作为传统意义上的助理老师,经常遇到诸如“人少事多、身兼数职”之类的问题。换句话说,很难覆盖整个学校的课程,因此课程也可能压缩。此外,某些编程学校的内容未集成到传统课程标准或教室材料中。因此,现任教师需要花费时间来进行系统培训、教育设计和其他相关内容的编程语言。在职教师可以利用教育部要求的3或5年培训计划来选择在线或离线编程技能或課程,并积极参加与教学技能相关的新技术的培训课程。同时,组织教师培训的单位和机构需要意识到,编程培训、创客培训和STEAM培训是在智能时代,尤其是在科技领域,这些都是培训的重要内容。除此之外,还应该在培训方案中及时补充有关内容,例如,在国家和地方各级引入各种激励机制,以鼓励在职教师参加相关的培训课程和竞赛。
4总结
未来几年,青年教育新领域的理论发展和商业化将进入快速发展阶段。从理论上讲,该领域应该要对编程教育有一个深入的了解和认知,并以对这些认知方法和重要概念的理解为基础,为青年程序员的读写能力建立课程标准和核心技能。同时,对青少年编程教育培训加以规范化,针对不同的群体设计不同的培训内容。实际上,在这一领域需要许多专业的年轻编程老师。因此,现有的教师培训应考虑什么是培训以及如何对教师进行编程。现有的教师培训计划还需要添加少量的编程课程内容。此外,学校与公司之间在发展青年计划教育实践方面的合作以及大学、初中和小学之间的合作将是未来发展的重要趋势。