基于情境模式与网络跨校协作的小学编程校本课程开发*
2022-03-01杨予平
张 青,黄 艳,杨予平
(1.湖南师范大学基础教育大数据研究与应用重点实验室,湖南长沙 410081;2.湖南省长沙市岳麓区滨江小学,湖南长沙 410013;3.湖南省中小学教师发展中心,湖南长沙 410000)
儿童编程能力被视为其适应未来社会挑战的重要能力,未来不具备编程思维的人有可能遭到淘汰。美国新媒体联盟在2017至2020连续几年《地平线报告(基础教育版)》中指出,未来几年,编程作为一项专业素养,将逐渐成为驱动基础教育发展的关键要素。教育部发布的《教育信息化2.0行动计划》提出,需要“完善课程方案和课程标准,充实适应信息时代、智能时代发展需要的人工智能和编程课程内容。”小学编程教育及课程是智能时代培养小学生信息技术核心素养的具体途径,旨在培养孩子创造性地思考并综合解决问题的能力。
一、小学编程校本课程开发的迫切需要与困境突破
(一)小学编程校本课程建设是双减下学生社团活动与计算思维培养的需要
“双减”中怎样合理有效地减负?如何确保在减负同时持续提升学生综合素养?全国中小学都聚焦“课后服务”与“社团课程建设”。编程教育社团以独特的时代性和实践活动的趣味性赢得了学校、家长和学生的青睐。编程教育是培养学生计算思维的重要途径[1],儿童通过编程能理解顺序排列的算法、习得问题分解技能、表达想法并能得到及时的可视化反馈,这些都体现计算思维的核心概念,即算法、抽象和分解、控制流程、规划设计和调试等。培养儿童计算思维的目的,是让儿童学会运用计算机科学家的思维方式解决问题:理清思路、确定方法、完成任务,从而提高问题解决的逻辑思维能力。编程教育下的计算思维已成为与阅读、写作、算术一样重要的基本素养。
当前我国儿童编程教育学校化进程处于起步阶段,笔者对长沙市近30所小学的信息技术教师开展了编程社团的课程与教学现状调查,统计发现长沙市近60%的小学在双减下建立了课后编程社团,开始了编程教育活动,但几乎都没教材,绝大多数没有合适的编程校本课程,而目前仅有的几本课程也因为由个别教师封闭性独立编写的缘故,缺乏知识结构连贯性和技能训练整体性,也没有不同年级的变化性,更没有符合小学生年龄特征的整套系统编程校本课程。因此,在当前还没有小学编程课程标准与统一教材、各校教学需求与师资水平参差不齐的情况下,开发符合各校实际情境的系统化编程校本课程成为目前小学编程社团教学迫切需要解决的问题。
(二)小学编程校本课程需要在开发理论模式、学校情境分析、团队协作三个维度突破当前困境
当前小学编程校本课程有三个困境:第一,单纯经验性开发的困境。目前很多校本课程开发存在“凭借经验,摸着石头过河”的开发现状,具体表现在课程开发环节零散、课程开发过程缺乏专业理论指导等[2],导致校本课程质量不高。校本课程开发模式必须在课程理论的指导下,形成系统且稳定的课程开发程序与开发实践,避免经验性开发。第二,已有课程材料不符合学校实际教学需要。无论是目前出版的编程教材,还是各中小学自主开发的编程校本课程,多呈现“杂而乱”现状,大多为单本形式,这些教材及校本课程没有基于学校实际情境分析,没有根据不同学生的年龄特点及认知差异来拟定具体课程目标并分层次进行课程内容的设计,其针对性和有效性不够,导致已有教材及校本课程能真正走进学校编程课堂的特别少。第三,目前的校本课程大多由学校内部某教师个体开发、孤独开发、或者某几个教师承担,没有与相应领域的专家合作,大部分学校都面临课程开发理论薄弱、开发能力不足的问题[3]。
二、小学编程校本课程开发的理论探索与模式借鉴
(一)常见的课程开发模式及其特点分析
泰勒提出课程开发的目标模式,可以概述为“确定课程目标、选择要学习的经验作为课程内容、组织经验与内容的学习、评价课程实施结果”四个环节,目标是课程开发的基础和核心。目标模式易于理解,较具操作性,但缺乏对知识本质的研究。斯滕豪斯反对课程设计开发时预先确定具体教育目标,提出“过程模式”,强调在开发“过程”中赋予教师充分的自主权并鼓励学生个性的发展,这对教师提出了较高要求,需要团队合作且有课程专家的介入才行。所以,美国课程理论专家施瓦布在过程模式的基础上提出“实践模式”,强调课程的实践价值以及整个动态过程,重视师生在课程开发中的作用,主张用集体审议的方式解决课程问题。
(二)情境模式及其对小学编程校本课程开发的借鉴价值
英国教育学家斯基尔贝克强调课程开发需要根据每个不同学校各自的具体情况,立足于学校实际情境的微观层面,对学校内外因素进行全面分析和评估的基础上研制课程开发方案[4],这就是课程开发的情境分析模式,简称情境模式。斯基尔贝克在《课程编制过程:学校使用的一种模式》中指出课程开发需要解决五个问题,简述为“分析学校实际情境”“确定需要解决的情境之课程目标”“设计课程研制方案与内容”“解释与实施”“检查、评价、反馈与重建”五个具体阶段。
笔者认为情境模式适合作为小学编程校本课程开发的理论基础,原因有三个。首先,从课程开发过程看,情境分析模式改变了目标模式中“直线式”的课程开发操作过程,认为课程开发的五个阶段是一个有机整体,课程开发可以从其中任一阶段开始,也可从几个部分同时开始,是一个动态发展和循环往复的过程,对小学编程活动课程研制与实施具有很强的灵活性与适应性;其次,从课程研制的出发点与目标看,它特别强调综合分析统筹考虑学校制约课程的内外因素及相互作用,课程研制要适应学校的真实需要,合理解决学校教学中的实际问题,课程目标、内容、研制方案与过程都要符合学校实际情境;最后,与别的课程开发模式比较,情境模式既避免了目标模式的程序僵化,又发扬了过程模式强调过程与实践的优点:将课程开发置于学校教育的具体氛围中,突出具体学校的特点和条件,充分考察和分析师生的课程实施能力,因此能很好的发挥学校自身优势,也能符合具体学校师生的发展需要。
三、基于情境模式与网络跨校协作的小学编程校本课程开发模式设计
(一)模式构建与运行机制阐释
笔者认为校本课程开发不应该是个体教师独立的行动,所以,在借鉴情境模式校本课程开发五阶段的同时,在原有基础上进行了调整:在分析学校实际情境与需要之前首先要建立合适的课程合作开发团队,以积聚一切可以合作的力量[5],建设好的课程开发团队是目前中小学校本课程开发的关键要素,因为没有团队或者团队力量薄弱导致目前中小学校本课程单个开发,质量不佳,低水平重复建设现象严重。因此笔者联络多所需求相似的邻近小学信息技术教师进行多校合作,同时,通过网络平台整合来自校内校外的共同力量,这就构成了“网络跨校协作”的小学编程校本课程开发团队。基于情境模式与跨校网络协作的小学编程校本课程开发模式如图1所示,包括团队建设、需求分析、目标设置、内容设计、课程实施、评价与修订六个要素,评估与修订的完成并不意味着课程开发的结束,课程开发是在不断循环中逐步走向完善。
图1 基于情境模式与网络跨校协作的小学编程校本课程开发模式
该模型的六个阶段是一个有机整体,课程开发是个动态发展和循环往复的过程,可以从其中某一个部分开始,也可以几个部分同时开始。从图1中可以看到目标设置、内容设计、课程实施、评价与修订这四个环节都是双向的依赖关系。例如,目标设置是内容设计的依据,但在内容设计中可再次审核目标是否科学、合理,从而也可以再次修善目标,课程在教学实施过程中不断被发现问题,同时也会得到师生与团队人员的反馈意见,由此可以对课程内容及其体系提出修改建议。
(二)基于SWOT的学校课程需求分析
SWOT需求分析法是美国旧金山大学管理学教授韦里克提出的。S表示优势,W表示劣势,O表示机遇,T表示挑战,通过SWOT模式,笔者对CS市某小学在编程校本课程开发的学校需求、学生需求、教师需求、专家访谈四个维度开展全面调查分析,了解学校的优势和不足,充分利用周边可能的资源,分析与克服不足。首先,基于学校的办学理念与实际情况,使校本编程课程的开发充分发挥学校的优势并体现特色文化。其次,充分考虑学校策略、教师能力、学生的初始水平及发展区间、双减课堂的实际需求等,这样才能使校本课程研制的质量得到保证。结论如下:第一,学校在设施设备和人力物力方面都可以为课程开发提供充分保障;第二,该学校非常重视校本课程开发,目前正在全面展开PBL项目课程设计,此项目面向学校多个学科进行,同时学校已经开发出了有特色的柔道系列校本课程,这些为开发小学编程校本课程提供了榜样与信心,同时寻找外部力量弥补学校的劣势,引入区域内多所情况与需要相近的学校进行团队合作,基于情境模式,网络跨校协作开发具有特色的小学编程校本课程切实可行。
(三)课程目标设置
本次编程校本课程面向CS市某小学编程社团的学生,是信息技术课程的补充,将该校本课程定位于已有信息技术课程的拓展,根据三维目标与信息技术课程的核心素养,编程校本课程的总目标是培养学生学习编程的兴趣,提升学生的计算思维、创新能力和逻辑思维能力;强调学生在自主探究、合作分享的基础上,通过项目式编写任务,获得丰富的编程学习体验,用编程思维解决生活中的实际问题。依据这个课程目标进行了内容选择、课程组织、体例设计等。
四、小学编程校本课程开发的团队分工与线上线下跨校协作
(一)课程研制的团队建设与分工
通过“引”高校、“跨”学校、“联”培训企业的形式,整合构成编程校本课程的开发团队,并且将团队分成“管理层——专家层——研发层——协助层”四个层次(如图2),这样的团队构成与分工模式既可弥补学校教师课程开发能力的不足,合理分配课程开发任务,又有领域专家给予开发理论指导,增强课程开发的科学性和可行性。具体构成与分工如下:
目前CS市大多数小学都面临信息技术老师不足的问题,除了全校信息技术学科教学任务,信息教师还需要承担学校所有的教育信息化相关工作,所以,单个学校的编程课程研制力量薄弱,课题研究能力与精力非常有限。故此,采用“跨”校的形式,将编程教学需求相似的三所邻近小学的信息教师联合成项目核心力量,即校级协作的编程课程研发层,分三个小组同时进行“启蒙”“进阶”“提升”三阶段校本课程编写,最终实现编程校本课程资源共建共享。
高校信息技术教学专业的在校研究生为课程开发协助层,为校本课程编写与实施提供资源、文献、案例等,同时他们自己也在课程研制过程中获得职前实践与专业锻炼。本省师范大学信息技术教育领域的高校教授与教研专家为专家层,为课程开发提供专业视角的课程理论与设计指导、提出改进方案、优化课程质量等,将他们丰富的理论知识与在职教师丰富的实践经验结合,反复对课程内容及其细节推敲。学校校长与学校课程研发中心主任为管理层,负责课程开发的总体规划、指导校本课程编制、审核监督课程设计与实施。
(二)校本课程开发的跨校协作平台与“线上线下”结合的开发形式
课程团队小组分工后同时研发,各小组各司其职,又协作互助,采用“线上线下”结合的形式,在自行开发的基础上通过网络平台定期交流研讨,分享开发经验,探讨开发过程中遇到的问题。
整个团队都使用贝壳网作为开展课程研制的跨校协作平台,借助其功能模块,在开发准备阶段,进行课程“需求分析”研讨,确定本次校本课程的目标,然后进行个人课程编写设计、小组协作开发与在线研讨,校本课程成型后;课程实施阶段通过个人备课、在线集体备课、线下课堂活动、线上直播与听评课等一系列高效活动,构建一个基于网络协作的课程开发与实施空间,反复修改,共同设计开发完成一套小学编程校本课程。
五、开发成果及效果评价
(一)全套校本课程成品的框架与内容介绍
根据小学生6-12岁不同阶段的年龄与心理特点、认知发展水平差异,团队“分层次”开发了启蒙、进阶、提高三个阶段的全套编程课程内容,每个阶段的课程分上下两册。在编程语言的选择上,启蒙和进阶两个阶段课程选择了编程猫。编程猫是中国本土企业自主研发的图形化编程教育软件,该软件免费开放、支持离线编辑代码,界面上创作直观可视化,让编程像搭积木一样简单有趣,非常适合中低年级小学生进行趣味编程探究。为小学高年级学生即将进入中学的编程学习接轨并做好预备,团队为提高阶段的编程课程选择了Python语言,因为Python入门容易、应用广泛,是目前全世界人工智能教育中热门的编程语言。
《启蒙课程》面向一二年级学生,此阶段通过编程猫在简单范例作品模仿中学习编程基础概念、体验基本技能及运行效果,让初次接触编程的学生能完成一些简单故事、动画和游戏的创作,体验编程乐趣。启蒙课程每册三个单元,上册内容是“初始源码编辑器”、“学习简单指令”、“多条指令的综合运用”,下册以编写小游戏的形式展开,逐渐递增难度。
《进阶课程》面向三四年级,引导学生在自主完成编程作品的过程中学会分析与解决问题,逐步提升程序设计和创新能力。进阶课程每册四个单元,上册包括“动作与绘图”“外观和声音”“循环语句”“条件语句”;下册是“变量”“功能块”“创意编程一”“创意编程二”,根据编程猫的功能块分区实践编程技能。
《提高课程》面向五六年级,本阶段学生具备一定的图形化编程基础与运算逻辑能力,以游戏化的项目作品完成为课程设计方式,既让学生保持编程兴趣,又引导学生Python语法与语句入门,为将来系统学习爬虫、网页设计、大数据分析内容做铺垫。
(二)校本课程的实施效果
教学实践是检验校本课程的必须环节。首先设计基于校本编程课程的教学实施方案;其次,三组编写教师研磨各自的教学方法并在编程社团活动中实施教学;最后,跟踪课程实施效果,按照德金(Deakin)的行动研宄法前后一年半时间开展了三轮行动研究,每轮均包括计划、行动、观察和反思四个环节,每一轮结束时都把反思后的问题解决计划作为下一轮行动研究的开始,如此循环。
对校本课程质量与教学效果的评价,主要通过课程实施中学生作品分析、师生满意度测评、专家与授课教师团队的恳谈与反馈进行。第一,教师将每位学生在一年半编程社团活动中的所有编程作品保存,通过对每位学生的作品系列进行前后纵向对比分析,发现学生在课程实施中计算思维能力、逻辑思维能力、编程基本功能都得到了明显提高;第二,在每学期编程社团活动结束后的满意度测评中,绝大多数学生对此课程非常感兴趣,非常期待下一阶段的课程;第三,本次开发与教学实践的教师团队以及指导专家定期举行交流会,讨论课程的有效性及修改完善意见,基本结论如下:基于情境模式与网络跨校协作开发小学编程校本课程的方式非常适合当前学校社团教学的实际需要,明显避免了独立学校开发、单个教师开发、高校专家独自开发等弊端;在三所学校同时进行的校本课程教学行动研究证明,分阶段分层次开发系统课程内容既考虑了编程技能的连贯性和系统性,又考虑了学生的年龄及认知差异,有趣的编程项目设计明显提高了学生的参与度,这种开发模式与实施方案具有参考和借鉴价值,可逐步推广至更多学校。