1. 引言
疫情期间,各类课程开展线上教学。《C语言程序设计》是我校大一各专业学员的计算机公共基础核心必修课程,如何保证课程在线授课的学习效果,是本课程在教学组织实施过程中最关切的问题。其实,无论是线上教学还是线下教学,都要完成既定教学目标,保证最终的教学效果。为了达到线上教学的教学目标,应该根据授课教学的学情分析,综合线下教学的教学经验,通过合理的技术手段和工具平台选取应用,保证在线授课的顺利组织实施与有效的教学管理。认真梳理分析线上教学与线下教学在教学组织形式、教学内容设置、教学互动设计、随堂检查方式设置等方面的差异,系统设计基于多种网络教学平台的网上在线教学,在顺利开展知识讲授传授的同时,有效实施师生双向互动,及时开展在线听课情况检查,知识点学习情况抽查,共性问题辅导共享,通过运用多种网络平台,准确了解学员学习情况,精准实施课堂管控,有效开展教学监督,切实提升网上在线教学的授课质量。探索出了一套以现有技术平台为支撑,操作模式系统规范,教学成效较理想的,可复制推广的网络在线教学模式[1]。
2. 《C语言程序设计》学情分析
《C语言程序设计》课程教学存在突出的两个学情特点:一是每学年都有上千人同学学习本课程,平均每班150人,最大教学班可达200人,属于典型的“超大班教学”。二是本课程一共40学时,其中理论内容讲授22学时,上机编程实践18学时,属于典型的“强实践”课程。超大班授课会存在一些问题,首先教学效果难以把控。由于学员数量较多,每个学员被分配到的教育资源就相对有限,不利于调动更多学员主动参与到学习活动中,教员难以把控教学效果。其次过程性考核难以管理。在大班教学中,教员难以实时掌握每个学员的真实学习状况,对每个学员的考核结果难以做到客观、公正。而超大班的线上教学无疑给师生之间的互动、学习效果的监督、编程问题的指导解决带来更大的困难和挑战。并且,在线教学不是线下授课内容和组织过程在线上的直接复制,我们有必要探究线上学习发生的基本条件,保证学员听课以及实践活动的真实发生。综上可以将本门课程线上教学的困难和问题梳理为三个方面:显性困难一,超大班在线主讲的教学设计和效果控制;显性困难二,在线、远程、“强实践”教学的组织与实施;隐性困难三,多种信息教学手段的综合运用。在具体的线上课程教学实践中,针对存在的困难,提出了“要让每个学员紧紧围绕在教员身边听课,要让教员走到每个学员身边实地辅导”的线上教学总体教学目标。
3. 《C语言程序设计》在线主讲与实践教学设计
针对“超大班”在线教学效果难以把控的学情特点,在22学时的在线主讲授课环节,课程提出实施讲、练结合,在单向、线上授课的同时,运用技术平台,随机、限时开展测试考查,牢牢把学员吸引在教员身边,确保教学效果的教学设计思路。结合课程的特点及教学目标,我们有针对性的选择信息技术手段及平台工具,达到我们的教学要求。
3.1. 知识点讲授的方式及平台运用
由于教学班学员人数众多且学时有限,因此在线上主讲教学过程中,我们采用以教员讲授知识为主的教学方式。课程选用钉钉进行线上直播授课。通过钉钉平台,让教员通过网络高效的完成课程内容的知识讲解。
3.2. 教学互动的方式及平台运用
教学互动一直是课堂面授与电视教学、微课教学、网络教学的突出差异点,也是一直以来课堂教学明显优于网络教学的重要领域。长期以来网络教学由于没有很好地处理好教学过程中的随堂互动,成了一言堂、单向广播,制约了网络课程的发展。我们将网上教学互动创新与实践,作为本次在线教学探索的重点突出出来,取得了较好的效果。
没有学员参与及反馈的课堂是没有灵魂的。如何保证超大班教学实施过程中,确保绝大多数学员能紧跟教员授课进度真正完成知识内容的学习这在线下教学都一直是一件难事。更何况在线上教学,教员与学员时空分隔、网络延迟等客观因素,使得教员对教学效果及教学管理都提出了更高的要求。必须在在线主讲课堂加入互动的练习环节。根据课程知识内容的不同教学要求层次,我们选取不同的信息技术手段和平台,高效完成在线主讲过程中的教学互动。
一是通过钉钉直播授课群的交流平台,完成轻量级问题的快速交互过程。教员抛出一个开放性问题,学员可以在钉钉直播群里通过简单的文字、手机拍照图片分享等方式完成一次小规模的思想交流。
二是通过雨课堂网络教学平台,在钉钉直播的同时,教员根据授课内容,即刻将刚刚所讲内容相关的题目发送到学员智能手机雨课堂客户端。通常教员会采用单选、投票、填空等这些简便的测试手段,快速反馈全体人员的在线学习情况和当前学习效果。多少人参与作答,多少人答对了,多少人答错了,正确率是多少一目了然,后台还有更多详细的学员答题数据及统计分析。
三是《C语言程序设计》是实践性很强的课程,不只要在18学时的实践环节需要上机,就在主讲环节也要随堂开展许多经典程序算法的设计和讨论。为此,我们引入了第二个工具软件Teamviewer。它是一个工业应用级的远程调试工具,它的主要用法是学员将其登陆ID和密码发给教员,教员通过这个信息可以直接进入学员电脑,实现远程操控学员机器,从而达到近似实地指导的教学效果。同时,通过钉钉直播连麦的方式,还能将整个调试、辅导、讨论过程以3D的形式全面分享给全班同学,完成了“学员在天边,教员在眼前”的讲练结合的教学过程。
综上,钉钉平台、雨课堂、Teamviewer,或简或繁,或对群体,或对个体,有机结合在一起,很好地履行了线上讲、练结合的职责。
我们总结在线主讲教学的讲、练过程,如图1。首先,教员通过钉钉平台对学员进行群体授课。雨课堂进行快速的随堂考查问卷发送与结果反馈,帮助教员进行课堂秩序维护、教学效果反馈、调整授课进度。Teamviewer软件,在程序设计讨论环节,能够有针对性地对单个学员进行指导,同时将这个指导、实践的过程分享给全体学员。形成一个很好的远程在线教学有讲、有练的教学闭环。
Figure 1. “C Programming Language” online lecture practice closed loop diagram
图1. 《C语言程序设计》在线主讲讲练闭环图
《C语言程序设计》包含22学时主讲,18学时上机实践。实践环节占到了整个教学课时的一半。为此,在强调知识掌握同时,更要强化编程实践能力的培养,我们必须突出在线实践环节的教学设计。同时,这也是课程面临的第二个困难——在线远程实践教学的课堂组织。通过教学实践,我们提出了“学员有题练,任务有监督,效果有考评,难点有辅导”的破解思路。总结起来四个关键字:练、督、评、导。
线上实践教学的练、督、评这三个方面,课程依托Educoder平台开展。Educoder是一个信息技术类专业,大规模在线实践教学平台网站。它的基本使用方式是教员根据课程进度和章节需要设置训练任务,限时发放给学员,学员将做好的编程实践结果提交给平台,平台自动完成对提交程序的审验,并给出评分结果,同时保存学员实践答题的各种行为记录数据,比如结果提交的时间,结果提交的次数,正确率等等,以便教员更进一步通过学员的实践行为属性数据,分析更客观且真实的教学效果[2]。
对于实践教学最重要的辅导环节,课程按照线下实体课堂的答疑规律,既要满足共性辅导又要满足个性辅导的要求,来选取技术平台及工具进行教学设计。对于Educoder中反馈回来的学员的共性问题,教员采取线上直播、线上会议、习题讲解录像、微视频等方式进行群体化辅导。对于单个学员存在的个性问题。我们采用多维度的辅导手段。具体讲就是用Teamviewer软件进行远程电脑控制,帮助学员调试程序,同时,使用钉钉、微信等语音方式进行同步交流,全方位立体地为学员答疑解惑。
图2就是对课程线上实践教学“练、督、评、导”各个环节实施的过程小结。首先,教员通过Educoder发布章节实践任务,学员课上限时完成相关训练,系统自动给出评分。相关考评信息及学员作答情况实时反馈给任课教员,教员根据问题的共性和个性。有针对性地进行教学辅导。对于共性问题,通过钉钉平台广播对全体同学进行辅导。对于个性问题,我们通过Teamviewer、钉钉、微信等操作方式进行单个答疑,如果有必要,还可以将这个过程分享给全班学员。从而完成一个紧跟章节授课考试测试,同时又能针对共性、个性问题进行辅导的全方位教学计划。
Figure 2. “C Programming Language” online lecture practice closed loop diagram
图2.《C语言程序设计》线上实践教学“练、督、评、导”示意图
4. 《C语言程序设计》线上教学信息技术平台选取原则
《C语言程序设计》课程线上教学与其他课程相比,还存在一个隐性困难,就是教学信息手段的综合运用问题。因为是大班教学、强实践教学,因此,任何单一平台、软件都不能完全胜任课程的教学需求。选取平台及技术都是以所要达到的教学效果及目标为牵引,在线教学的平台选取应该基本满足知识内容传递、教学效果快速反馈、教学组织管理、教学任务发布、教学练习监督、学员问题答疑等。所以《C语言程序设计》在线课程中选用的主要平台和软件是:Educoder、雨课堂、钉钉、Teamviewer。
Educoder在全校《大学计算机基础》的课程中已经使用了两个学期。在混合式教学的试点中,雨课堂已发挥了积极作用。我们在研究生研讨和Acm俱乐部培训中,钉钉平台一直作为首选。在科研开发过程中,课程组教员经常使用Teamviewer软件指导学员,或者团队教员之间进行软件调试交流。所以,这四个平台、软件的选取不是当务之急的一哄而上,而是课程组教员常年教学、科研经验的积累沉淀与重组创新[3]。
5. 《C语言程序设计》线上教学的优势与不足
经过完整的《C语言程序设计》课程40学时网上教学实践,课程组在探索中不断的修改完善原有的网上教学设计,对多种网上教学平台的综合运用提出了较规范的操作配合模式,对线上教学的理解和认知有了更加全面客观的提升,较好地完成了《C语言程序设计》这门超大班、强实践的网上教学任务。同时,课程组研讨发现,基于多平台支撑、师生有效互动的网上教学模式,与传统的课堂教学相比存在着诸多优势。
第一,线上教学可以对所有学员提供更加公平的教学资源。线上教学突破时空界限,使得超大班的每个同学不会因为在教室的位置不同,而受客观因素的影响,比如在教室的座位前后不同,使得听讲效果打折扣。在辅导答疑过程中,答疑时间限制也被打破,学员有问教员速答,反而使得学员被教员的关注度较线下教学大大提高。
第二,在线回看功能更加符合学员的学习规律。通过数据统计表明,超过三分之二的学员会在课程学习过程中观看视频回放。并且随着课程内容难度的增加,学员观看视频回放的次数和频率都是在逐步上升,几乎所有学员表示,希望回到线下学习中能有视频回看的过程。
当然不足之处也是存在的,第一,缺乏面对面的互动。尽管线上教学可以通过多种平台实现师生互动,但这种互动往往不如传统课堂直接和生动。学生在课堂上可以通过肢体语言、眼神交流等方式与教师进行更为直观的沟通,而在线上教学中,这种非语言的交流方式受到限制,可能导致学生在理解和吸收知识时出现障碍。
第二,自主学习能力要求高。线上教学通常需要学生具备较强的自我管理和自主学习能力。自律性强的学生会受益于线上教学,但对于一些自律性较差的学生来说,缺乏教师的直接监督和引导,可能导致学习效率下降,甚至出现学习动机不足的情况。
6. 结束语
本文针对《C语言程序设计》课程线上教学的思路进行了梳理和探索,认为在线上教学的过程中通过选用合适的信息技术教学平台,能够形成有效的练、评、督、导教学模式,进而提高线上教学效果。面向未来,课程组也做了一些筹划,认为未来可以从三个方面思考拓展。一是要巩固目前的研究成果。教学方法手段有了突击性的强化,后续仍然要开展探索,形成更成熟的线上线下紧密结合的练、评、督、导完备的教学模式。二是,要拓展探索在线远程培训方式。这样可以节约大量的资源,真正把课堂拓展到更大的范围。三是要探索教学应急能力。要探索运用线上教学手段,有效应对突发教学任务,要针对于教员必须的出差和不可避免的事假,通过线上教学手段进行应急教学,避免对正常教学计划的影响。