芥末堆芥末堆

芬兰中小学如何开展编程教育?

作者:康建朝 发布时间:

芬兰中小学如何开展编程教育?

作者:康建朝 发布时间:

摘要:探讨芬兰中小学编程教育的缘起、实践路径与特征,以及对我国编程教育的启示。

1614160110732923.jpeg

图片来源:图虫创意

计算思维被认为是学生应当具备的基本素养与能力,编程教育是培养计算思维的重要途径。欧盟多国重视编程教育,芬兰成为欧盟首个以完全“跨学科”方式在中小学融入编程教育的国家。芬兰通过国家课程顶层设计、多样化项目开展及教师专业培训等多维举措,促进编程教育落地。

芬兰中小学编程教育有着多方面特征,包括指向计算思维培养、课程设置尊重学生发展规律、重视教师在职培训、注重项目持续开展等。芬兰的做法给我国带来一定启示,包括将计算思维和关键能力培养作为编程教育的根本着力点,课程设置注重编程语言学习规律及其与特定科目融合的匹配度,线上线下结合开展实操性教师培训为编程教育提供专业保障,注重开展实证研究引领支撑编程教育项目持续深耕,基于编程教育内在价值澄清构建多方主体合作机制等。

通过对重要文献、政策、官方权威信息的广泛搜集梳理,旨在对芬兰中小学编程教育背景、实践路径及主要特征予以探究,以期对我国中小学编程教育切实落地有所启示。

一、引言

计算思维是数字技能的重要组成部分,成为未来人才不可或缺的素养与能力,而编程是培养计算思维的重要途径。发达国家日益重视编程教育,欧盟近二十个国家已将或即将在中小学纳入编程教育。中小学编程已成为促进数字时代学生了解计算机科学,提升推理能力、沟通与表达交流能力的重要手段。作为基础教育备受瞩目的国家,芬兰于 2016 年新颁布国家课标,正式将编程教育写入其中,并提出较高要求,从一年级就开始编程教育,并将编程教育完全融入数学、手工等学科,具有一定模式独特性。本文拟对芬兰中小学编程教育根本理念、课程设计、教师培训、项目实施等开展分析探讨,以期对我国中小学编程教育落地实施有所启示与借鉴。

二、芬兰中小学编程教育的背景与缘起

芬兰中小学编程教育写入国家课程并落地实施,有几方面背景与缘由:一是理念驱使,二是区域带动,三是历史承袭,四是时代需要。

(一)理念驱使:计算思维培养日益成为中小学重点关注领域

早在 1996 年,LOGO 编程语言开发者西摩尔·帕普特(Seymour Papert)就进行了有关计算思维的讨论。新千年后,美国计算机科学家周以真(WING J M)通过系列文章和国际会议对“计算思维”作出界定,引发国际范围内对计算思维本质及其教育机制的讨论。比较典型的是 2011 年她对计算思维的界定:“计算思维是一种系统阐述问题解决方案,并使解决方案可由信息处理代理来有效执行的思维过程。”之后,很多有关计算思维的界定基本建立在这个重要界定基础之上。尽管界定不同,但诸多学者认为:计算思维已经成为学生都应具备的,与数学和读写一样重要的基本素养与能力。编程教育是培养计算思维的重要途径。

(二)区域推动:将编程融入中小学教育体系

已成欧盟国家普遍趋势欧洲学校网(European Schoolnet)于 2015 年发布的报告显示,欧盟近二十个国家已将或即将在学校课程体系中纳入编程教育。欧盟国家将编程教育纳入中小学呈现三大趋势:一是部分国家在 2016—2017年间全面启动课程修订,将编程正式纳入国家课标。典型国家包括法国、芬兰、波兰等。二是部分国家自2012—2013 年开始,计划将编程全面纳入义务教育阶段,但截至 2017 年尚未全面落地,仍处于政策商讨阶段。典型国家包括捷克、爱尔兰、希腊等。三是另有一些国家,拥有高中计算机科学教育传统,但初中和小学基础较弱,计划将编程教育由中学延伸至小学阶段。典型国家包括奥地利、塞浦路斯、立陶宛等。

(三)历史承袭:芬兰跨学科开展编程教育有一定传统与根基

20 世纪 80 年代,信息技术课程已进入芬兰学校,在 1982 年成为高中课程的一部分。当时多方基本达成共识,既然计算机素养是信息社会的必备素养,编程又是计算机素养的基本语言技能,学习编程自然必要和重要。1987—1988 年,信息技术学科又被芬兰列为初中阶段选修课。自 1994 年国家课改之后,芬兰不再将信息技术作为一门单独的学科课程来设置,而是将其融入其他学科之中。即自 20 世纪 90 年代初,芬兰信息技术教育就开始采用“跨学科”方式来实施。芬兰当下以其他学科为载体开展编程教育的模式,实际上是对其信息技术教育长期以来传统惯用模式的承袭与延续。

(四)时代召唤:中小学编程教育助力芬兰数字化和人工智能战略

芬兰新一届政府将促进整个社会数字化进程,教育与文化部近年基础教育改革规划重视提升师生数字化素养,经济与就业部也于 2017 年发布国家人工智能战略[9]。编程和计算思维教育有助于学生习得数字化素养与能力,而且编程是人工智能时代的通行语言。编程教育将助力芬兰数字化和人工智能战略的实施。芬兰国家课标提出七大综合素养,作为学生发展总目标,其中之一是信息技术能力,而编程能力又是信息技术能力的重要组成部分。芬兰国家课标要求:一至二年级学生要获取并学会分享适合他们年龄的编程经验;三至六年级学生要在尝试编程过程中,学会理解人类所做决定如何影响技术运行方式;七至九年级学生要学会在不同学科学习中使用与练习编程。

1618310400665761.png

图片来源:pixabay

三、芬兰中小学编程教育的多维实践路径

芬兰通过国家课程顶层设计、多样化项目开展及线上线下教师专业化培训等多维举措与路径,促进中小学编程教育落地实施。

(一)国家课程顶层设计将编程教育融入数学与手工等科目

芬兰以完全“跨学科”方式将编程教育融入中小学,数学和手工为主要学科载体。据奥尔托大学研究发现,与其他欧洲国家相比,芬兰对编程教育要求较高,早至小学一年级就开始这方面的教育。

1. 不同学段由可视化编程到语言编程再到深入理解计算思维逐步学习进阶

以数学科目为例,国家课程标准规定了不同学段数学课程中编程和计算思维学习目标、内容与评价标准,见表 1。

总体而言,芬兰小学数学课主要通过可视化环境对学生开展编程入门教育。初中阶段,数学中的编程教育重心转为培养学生的算法思维和问题解决能力。到高中阶段,有专门的“数学中的算法”课程模块,为学生深入理解计算思维提供普遍的课程学习机会。

2. 赋能未来的编程教育与传承百年的手工必修课相得益彰

芬兰通过国家课程顶层设计将编程教育融入手工学科,值得进一步探讨。在创客时代,通过“在制造中学习,亲身实践创造某项产品的过程中所获得的知识才最有价值”。芬兰中小学手工课长期以来秉承“做中学”理念,与“创客”文化不谋而合。3~6 年级手工课要求学生操控编程支持的机器人或自动化产品;7~9 年级手工课实验探究环节,鼓励学生将编程练习与作品创作融合进行。

编程不只是简单编写代码,也包括动手操作内容。在芬兰新一轮课改中,手工学科成为编程教育的重要载体也在情理之中。从另一个角度看,芬兰是世界上最早开设手工课的国家之一。早在 1866 年,手工教育便被写进国家法案,作为学校必修课已有一个半世纪的历史。随着社会变迁和职业需求变化,手工教育所使用的材料和技术在不断改进。编程教育具有鲜明的时代属性与朝向未来的广阔发展前景,它的融入能够加强手工教育的科技属性,也将使这门横越 150 余年长盛不衰的芬兰学校必修课获得更新更强的生命力。

(二)政府、高校和企业等多元主体组织开展丰富多样的编程项目

芬兰编程教育项目和资源平台多为非营利和公益性质,旨在为师生提供编程教育专业指导和资源支持,提高教师的编程教学能力,激发青少年的编程学习兴趣。

1. 典型编程教育项目运行方式与活动内容

芬兰编程教育项目面向不同年龄段学生,形式包括工作坊、主题培训、研学旅行、兴趣社团、在线课程学习、竞赛、家校共同完成一定的项目任务等,见表 2。

仅以“伊诺卡斯合作网络”(Innokas Network)和“机器人工艺学校”(Kasityokoulu Robotti)两个项目为例。首先,“伊诺卡斯合作网络”项目是芬兰国家层面旨在促进机器人和编程教育的大型项目。该项目得到国家教育委员会资助,并由赫尔辛基大学及埃斯波市政部门统筹运作,旨在促进学校 STEAM 学科与数字制造、编程、机器人等教育活动深度融合。项目内容包括教师在职培训、编程及机器人教育创新等系列活动。2017 年,项目团队与赫尔辛基一所学校协作开展了编程创新活动。活动任务为学生在教师指导下,使用可编程设备及 3D 设计软件等,创造性地完成一件智能物品或服装。项目历时 8~9 周,学生小组每周开展2~3 小时作品设计活动。

其次,“机器人工艺学校”项目发起于 2012 年,是一项非营利创新学校项目。项目学校分布于埃斯波、图尔库和赫尔辛基三个城市,通过组织实验探究和小组合作,开展基于编程和电子技术的手工艺教育。课程形式包括工作坊和研学旅行等,家长也可参与其中。学期之初,师生共同明确作品目标,学生为完成目标全力以赴,探索自由化的创意编程。

2. 项目组织实施一般模式与核心要素

通过以上典型案例剖析,大体可从四方面理解芬兰编程教育项目开展的一般模式与核心要素。一是参与主体多元,项目运行以政府、高校、学校、家庭等共同参与协作为基础;二是活动内容跨界,注重编程与手工、技术、艺术等不同学科领域跨界融合;三是采用项目式实施方式,充分体现和遵循项目式学习流程,在此过程中培养学生沟通、合作等多方面能力;四是以提升学生数字化素养为根本目的,编程活动只是一种载体,最终目的在于让学生借助数字化设备创新与创造,提升数字化素养。

1627035688601277.jpeg

图片来源:unsplash

(三)通过慕课等形式促进教师编程教学能力培训与提升

芬兰编程教育开展对教师带来挑战,尤其如何在数学、手工等课堂中采取有效方式实施编程教育,对教师而言是相对复杂的任务。

1. 积极开展线上线下培训,应对教师编程教学挑战

芬兰行政部门、大学、企业等机构,已在频繁组织线下培训。如在瑞典语区域,有大学专门开展针对小学教师的培训。课程内容包括 Scratch 基本应用、基于模块的可视化编程、教育机器人、算法思维及可编程电子器件的使用等。此外,“ABC 编程慕课”(Coding ABC MOOC)是比较典型的面向中小学教师的线上培训项目。该项目由教师和大学研究人员于 2015 年自下而上发起,先后得到多方资助。培训课程依托奥尔托大学开发的慕课学习平台实施,便于学习者灵活安排学习进度地点。实践表明,该慕课完成率和用户黏性较高,受到学员好评,相关经验值得借鉴。

2. 多方面着手精心打造慕课培训课程

芬兰多方面着手精心打造“ABC 编程慕课”。

一是课程模块化,教师可灵活开展学习。该慕课针对不同年级和学科教师提供 Scratch Jr、Scratch、Racket、Python等模块课程。每种课程模块包含 5~8 个学习单元,由相应年级擅长编程教学的专家型教师牵头实施。课程模块化和单元化设计,有效降低教师认知负荷。每个单元学习只需 20~60 分钟,教师可在繁忙之余随时随地开展学习。

二是课程案例生动鲜活,注重实操实用。生动鲜活的教学案例和适用于课堂情境的练习任务,使教师更易开展实际应用和自主创新。三是课程内容兼顾普遍性与个性化需求。如针对 7~9 年级教师的“Racket”模块课程,主要面向数学教师讲解如何将数学知识融入编程教学;而同样针对 7~9 年级教师的“Python”模块课程,则面向所有对编程教学感兴趣的教师,讲授更具通用性的编程知识。四是课程内容不断调整迭代。课程在基于设计的研究(DBR,DesignBased Research)理念下,通过在线调查收集学员教师反馈,不断调整迭代和优化课程设置。五是注重国际经验本土化。该慕课中针对 7~9 年级教师的 Python培训课程,实际由美国开发。芬兰学者和教师在国家教育委员会资助下,翻译课程并做本土化改造,最终得以实施。

四、芬兰中小学编程教育的主要特征与启示

芬兰中小学编程教育在理念目标、课程顶层设计、教师培训、项目开展等方面有其特征,对之展开剖析,或可为我国编程教育落地提供一些启示。

(一)芬兰中小学编程教育的主要特征

第一,指向计算思维培养并通过编程教育提升数学科目学习兴趣。芬兰中小学编程教育的根本理念旨在培养学生计算思维与关键能力,而非教会学生单纯编写代码。最终目的是为学生在数字化时代赋能,提升其对数字技术的深度理解力而非基本使用技能。此外,芬兰希望通过开展编程教育,发挥编程的学习技术工具作用,增进学生对数学的理解,从而提升其学习数学的兴趣度。

第二,课程设置尊重学生发展阶段特征与学习规律。从课程设置看,芬兰小学主要在可视化环境下学习编程,初步学会简易的编程概念与技能。到初中,学生由可视化编程过渡到语言编程学习,重心转移至培养学生算法思维和问题解决能力。到高中,国家课标设置了更高难度的课程模块,以促进学生深度理解计算思维。

第三,重视教师的在职培训和编程教学能力的提升。编程教育对教师专业发展带来挑战,即使以高质量师资著称的芬兰也不例外。为提升教师编程教学能力,芬兰创新了培训的形式和内容。慕课便于学习者灵活安排学习进度地点,比线下培训更易实现规模化。除课程形式,“ABC 编程慕课”争取多元主体支持,由大学研究人员和教师等民间力量自主发起,得到协会、高校、基金会、政府部门等的共同资助。

第四,注重编程教育项目的持续开展。芬兰编程教育项目的发起实施,注重不断深耕、持续发展。以“伊诺卡斯合作网络”项目为例,该项目十余年前起源于埃斯波市,早期只针对该市教师开展在职培训,后来得益于赫尔辛基大学教育科学学院专业助力,逐步扩展至十多个地市,构建起全国性网络。项目内容从单纯教师培训,扩展为兼具学术研究、编程活动、咨询指导等。

第五,充分调动发挥多元主体作用。芬兰政府通过国家课标为编程教育提供政策保障,大学研究人员、中小学教师、企业等积极协作。如“ABC 编程慕课”,由研究人员和教师自下而上发起,逐步获得多方资助。编程教育项目运行,倡导学校与图书馆、社区、家庭、企业等开放合作,促进校内外协作互通。

1611221576169409.png

图片来源:pixabay

(二)对我国编程教育的启示与探讨

我国中小学编程教育研究与实践仍处于初期阶段,芬兰有关做法与经验对我国中小学编程教育稳步开展与纵深推进有一定启示意义。

1. 将计算思维和关键能力培养作为编程教育的根本着力点

已有研究表明,在计算思维能力方面打下坚实基础的儿童,在解决问题时更为高效辩证。编程的魅力不仅在于编码,更重要的价值体现在问题解决过程及思维能力的延伸等无形技能的培养。然而,我国目前真正体现“计算思维”培养的编程教育教材寥寥无几。在这一领域开展的实验研究仍显不足。芬兰学者认为,将编程教育融入数学,将使其学习重心转向“计算思维”培养。新课程实施一年后,2017年面向芬兰小学数学教师开展的调查发现,他们对数学科目融入编程的育人价值有明确认识,见表 3。

科学认识计算思维育人价值仅仅是开端,通过设计有效的课程体系、开展教学实践、构建有效的评价体系等,才是计算思维研究的核心内容。

2. 课程设置注重编程语言学习规律及其与特定科目融合的匹配度

2019 年初,我国教育部启动了义务教育课程修订工作,初步确定在小学、初中开设信息技术课程,根据需要将编程教育相关内容纳入其中。借鉴芬兰经验,课程内容设置应充分考虑不同学段学生的身心发展特征,由易到难依次进阶。从形式看,芬兰编程教育完全融入其他学科落地实施。编程教育有利于学生对其他学科知识的接受与掌握。多国实证研究发现,Scratch 编程教学在科学、艺术、英语、历史、数学等学科中的合理融入,对这些学科的成绩改进有所助益。

面向未来,我国中小学如何合理设置与实施编程课程,芬兰跨学科融入的模式或可带来一定的启示。同时,芬兰关注不同性质的编程语言融入中小学特定科目的契合性与匹配度问题。据芬兰调查研究发现,函数式编程(如 Racket)与数学学科更加匹配,特别是在函数和变量的表示方面,而指令式编程(如Python)包含更多与数学科目无关的元素。我国融入学校其他科目的编程教学要力争与该科目有最大的匹配度,避免浪费时间。只有对学科融合式编程教育开展系统化研究和学习实验,才能找寻到最匹配的教学工具和方式。

3. 线上线下结合开展实操性教师培训为编程教育提供专业保障

教师专业能力不足成为中小学编程教育切实开展的明显障碍。多数国家现有的教师职前培养课程并不包含编程知识与技能。“我国儿童编程教育实施范围较小、程度尚浅”,需要加强职前和在职教师培养与培训,提升相关教师编程教学的能力。在实施 2020 年全国中小学教师信息技术应用能力提升工程 2.0 的过程中,教育部特别要求各地对接中小学编程教育需求。

我国可借鉴芬兰经验,发挥多元主体作用,共同助力教师编程教学能力培训提升。课程内容要注重案例性、实操性与实用性,注重教师实际体验与课堂应用,吸收转化国际经验等。有关政策提出,要“实行线上线下相结合的混合式研修”。我国也可采取线上线下相结合的方式,对教师开展编程教学培训。形式与内容创新,有助于参训教师编程教学能力的切实提升。另外,有学者提出,编程智能导师系统将成为解决编程师资匮乏及满足个性化学习的最佳方案。这为解决编程教育师资匮乏难题提供了一种新的研究与探索视角。

4. 注重开展实证研究引领支撑编程教育项目持续深耕

为避免我国不同层面编程教育项目出现轰轰烈烈上马、草草了事收尾的现象,实现项目纵深发展,项目组织者需开展严谨细致的实证研究,为项目保驾护航。因为,“只有大量基于真实情景的实证研究,才能不断探索编程教育的各类影响因素”,进而,“从各类研究中验证并推广行之有效的策略与方法”。芬兰中小学编程教育项目的持续深耕,得益于实证研究的引领与助力。项目注重理论与实践相结合,充分发挥科研引领作用,边实践边总结,提炼获取有价值的课程教学改进策略。

还以“伊诺卡斯合作网络”项目为例,针对学生在编程项目中的学习表现,项目研究人员采用人种志及观察法开展追踪研究。在学生中开展小组学习活动时,研究人员架设摄像机全程录制视频和音频,尽量记录所有细节,同时开展实地参与式观察,并做好记录。进而,研究人员对资料开展深入研究分析,为课程教学改进提供针对性策略,提升项目运行模式和效果。另外,项目组也经常开展问卷、访谈等调查研究,及时发现问题、总结经验,充分发挥实证研究对项目持续深入开展的引领助力与支撑保障作用。

5. 基于编程教育内在价值澄清构建多方主体合作机制

中小学编程教育切实落地与推广实施,需要多方主体共同努力、协作推进。不同主体的合作,有助于集思广益,带来更好的创新价值与创意行动。从我国中小学编程教育开展的实际情况来看,“并未形成全面铺开的编程教育课程建设”。要争取多元主体对中小学编程教育的支持,需要向其澄清编程教育的内在价值。尤其对教师而言,只有他们真正理解编程教育的内涵在于促进学生计算思维和关键能力发展,以及在智能时代为学生未来人生赋能的潜在价值,才能产生内生动力并积极开展实际有效的课堂行动。“编程教育落地首先要解决思想冲突并完成认知同化。”

此外,参照他国中小学编程教育模式经验,有助于本国反思自身之不足,从而更好地谋划未来的改进策略。对此,我国也可在国情基础之上,合理借鉴他国经验,探索形成我国特色。

(本文原载《电化教育研究》2021年第8期,作者康建朝系中国教育科学研究院国际与比较教育研究所博士)

本文转载自微信公众号“国际与比较教育研究所”(ID:Edu-in),作者康建朝。文章为作者独立观点,不代表芥末堆立场,转载请联系原作者。

1、本文是 芥末堆网转载文章,原文:国际与比较教育研究所
2、芥末堆不接受通过公关费、车马费等任何形式发布失实文章,只呈现有价值的内容给读者;
3、如果你也从事教育,并希望被芥末堆报道,请您 填写信息告诉我们。
来源:国际与比较教育研究所
芥末堆商务合作:王老师 18710003484
  • 芬兰中小学如何开展编程教育?分享二维码