如何有效支持学生的学习
之前在讨论如何出好编程作业的时候, 我们尝试列举了一些“增加支持度”的方法。在这里,我们再详细讨论一下“如何有效支持学生的学习”这个话题。这里不限于编程作业相关的帮助,也可能包括课堂内容理解相关的帮助。
为什么要给学生提供帮助?
设想一种情况: 假如我们有对于同学们的平均水平难度合适的实验, 完善的实验文档和实验框架, 合理的评分标准, 在发布作业和作业截止之间, 助教不做任何答疑、不提供任何帮助, 效果会怎么样?
同学们都会顺利地完成作业吗?
实际上,由于学习能力、知识基础的不同, 同学们之间的“方差”非常大。对于“平均水平”的同学难度合适的实验,几乎一定对一些同学过于简单、对一些同学过于困难。
“过于简单”的部分其实问题不大,同学只不过是花少量时间完成简单的任务获得分数。作业中也可能有可选的挑战性任务来满足他们的需要。
但“过于困难”的问题会大一些。由于编程作业往往比较复杂,同学之间的“方差”大,可能不意味着70%的同学顺利完成、30%的同学完成作业有困难。这可能意味着只有30%的同学能不借助帮助完成作业,70%的同学都会在不同的地方遇到或多或少的问题,需要帮助。(这里的数字都是估计,未必准确)
舍友之间交流可以解决一部分问题,但不是全部。分流转系、选修课等情况,舍友也无法帮忙。答疑坊可以解决一些基础课问题,但专业课的问题常常解答不了。(而且,同学不得不问答疑坊解决问题时,通常会觉得课程本身没有提供足够的帮助)
最终同学们如果找不到合适的帮助途径,要么就要在作业上投入远超课程团队预期的时间,要么干脆放弃这个作业。不管是实际的学习效果,还是同学对课程的评价,最后都不会太好。
因此, 我们就要想办法给学生提供有效的帮助,或者说“学业支持”。
另一个角度是, 提供恰当的“学业支持”不会让课程变水。因为,如果不提供帮助时,同学做难度系数1.0的事情, 在提供答疑辅导、习题课等支持后,就可以让同学做难度系数1.5的事情。
一个参考: TOP2计算机系,已经开始怀疑自己完全不适合相应领域的学习,未来的路应该如何走? 描述了计算机系学生的一些焦虑情绪,可以说这里的一些焦虑就是课程提供的帮助不足导致的。
理论探讨: 学业支持/学习支持
学业支持(academic support)或者学习支持(learning assistance) 这个概念最先指的是在课程之外,院系或学校层面,采取的帮助学生顺利完成学业的措施,典型如学业发展中心提供的学业咨询(academic advising)、答疑坊等服务。美国20世纪下半叶高等教育的规模扩张,导致大学中需要学业帮助的学生增加,于是在20世纪60/70年代,很多大学都建立了类似学习支持中心(learning assistance center)机构,用来帮助那些未准备好学习大学课程的学生。
Structued learning assistance 是一种新型的学习支持方式。相比支持遇到困难的学生,SLA 寻找那些学生容易遇到困难的课程,主动为这些课程的学生提供习题课和答疑等学业支持服务。
依赖课程之外的学业支持途径来解决学习中的困难,对于少部分特殊情况的学是可行的。但如果课程中有相当一部分学生(比如超过20%)都遇到一些困难,那么最好还是在课程内部,通过老师助教提供的帮助、作业文档的完善、鼓励课内学生互助等方式来解决。毕竟对于大量的专业课,学业发展中心能提供的帮助总量有限,针对性也经常不足,还是以低年级基础课的相关辅导资源为主。
参考文献: https://www.lsche.net/about/history/
完善课程学业支持的思路
学生需要做的事情
答疑辅导和习题课,需要学生主动求助(在答疑辅导环节提问、在习题课环节出席/上线)
首先,学生要意识到自己需要帮助, 并且知道如何求助。
助教所要做的:
- 帮助同学意识到,自己需要帮助、助教提供帮助
- 力所能及范围内,提供同学需要的帮助
具体来说, 可以给学生介绍一些明确的标准/工具, 用来衡量自己是否需要帮助。
比如, 给作业设置一个参考的完成用时, 学生可以计时, 判断自己是否花费了过多的时间, 在用时过多的时候积极求助。
另外, 同学需要了解, 助教能提供哪些帮助, 不能提供哪些帮助。最好在学期开始时就明确这些, 避免同学误认为助教不能提供某类帮助, 或者相反,误认为助教能提供某类帮助。
概念: 元认知能力(meta cognitive)
元认知能力的定义常常显得很模糊。“元认知能力,实质是对认知的认知,是个体对自己的认知加工过程的自我觉察、自我反省、自我评价与自我调节,它包括元认知知识、元认知体验和元认知监控三个成分。” 最早看到这种定义的时候, 我也是一头雾水。没有具体的实例, 是不能很好地理解这个概念在说什么的。
我们以“学习课程的时候遇到理解困难”为例, “认知能力强”的人, 能够更快地理解课程内容, 较少遇到理解的困难。
"认知能力弱"的人, 理解课程内容更慢, 可能会更频繁地遇到理解上的困难。
"元认知能力强"的人, 能够意识到自己在理解课程内容时遇到了困难、清楚地意识到在哪里遇到了困难, 尝试一些求助的途径。
"元认知能力弱"的人, 可能意识不到自己没理解课程内容(不懂装懂, 似懂非懂), 也不知道自己在哪里遇到了困难、如何求助。
课程设计的时候, 可以引导同学, 通过一些建议, 帮助他们拥有更好的元认知能力。
提供学生所需的帮助
一种做法是:
- 了解学生当前主要遇到哪些困难/哪些问题难以独立解决
- 思考课程团队可能提供哪些帮助/已经提供了哪些帮助
- 衡量“困难”和“帮助”的匹配情况(可以画个矩阵/表格),然后尝试改善
帮助和困难需要在内容上匹配, 例如:
- 如果学生经常在配环境上遇到困难,那么就需要写关于配环境的文档/提供docker或虚拟机镜像等解决方式
- 如果学生经常在调试上遇到困难,那么就需要给一些关于调试工具、调试思路的帮助。
- 如果学生经常在思路上遇到困难,那么就需要把思路写得更明确、提供关于思路的提示
帮助和困难需要在时间上匹配, 例如:
- 不可能确保学生在想要获得帮助的任何时刻都获得来自老师/助教的答疑。
- 除非是自动的答疑机器人、或者整理成文档的常见问题
- 可以引导学生,在老师/助教能提供帮助的时候寻求帮助(线下答疑/office hour)
- 助教不可能保证对线上提问总是及时回复。线上也不能保证学生和助教有连续的互动。
- 需要帮助学生意识到自己什么时候需要寻求帮助、可以从哪里获得帮助
- 考虑给作业题目/阶段列出参考用时。学生用时超出参考用时两倍时建议学生求助。
- 在学期一开始,最好给学生发个公告,列出课程提供的所有答疑求助途径
- 可以给学生描述一个推荐的完成作业时,答疑求助提问的流程
他山之石: 线上答疑的局限性
通常来说,通过电子邮件回答编程作业问题几乎是不可能的。延迟(round-trip time)太长了, 没有交互性。电子邮件讨论最终常常退化到请助教帮你找出一个bug,这不是很有教育意义。因此,请来线下答疑讨论编程作业问题。
Generally speaking, it’s almost impossible to answer programming assignment questions over email. The round-trip time is too long, and it’s not interactive. Email discussions often boil down to needing a TA to find a bug for you, which isn’t very educational. Therefore, please attend office hours to discuss programming questions.
from https://cs144.github.io/logistics.pdf
答疑具体技巧
- 避免将答案直接告诉学生 / 告诉学生怎样做能得多少分。
- 引导学生自己搜集信息解决问题,例如推荐学生使用某种搜索关键词、查询某个文档,而不是直接把文档内容/搜索结果告诉学生。
- 线上提问如果无法立即回复,可以先告诉学生“今天稍后回复”。
- 保持心平气和,尽量不将情绪带入答疑中,避免让学生感到不耐烦/阴阳怪气。
- 如果有条件,将自己做的前几次答疑做一些过程记录/录音录像,然后回顾反思。
- 总结归纳一些“快速回复”,用来让答疑变得更加高效。
- (持续更新)
TODO: 总结介绍 https://pg.ucsd.edu/publications/cs-undergrad-lab-tutoring-experiences_SIGCSE-2021.pdf 的内容。
鼓励学生互助
同学之间的互助常常在班级内、宿舍内发生。但也总是有互助氛围不佳的班级/宿舍、不和计算机系同学在一个宿舍的同学(例如新雅同学或一些转系但没搬宿舍的同学,或外系选课同学)。通过一些手段,可以增加同学们之间互相帮助讨论的积极性。
例如: 拉一些小群。课程大群可能有几十上百人,可以拉一些规模不超过二十人的小群,鼓励同学们在小群内互助。
或者,在同学中招募一些小助教,做一些培训,让他们承担一些答疑工作。最后,根据同学们对他们的评价,可以获得一定的加分。
跨界灵感: 小群效应、旁观者效应与公开演讲恐惧症
腾讯产品经理发现, 500人以上的QQ大群实际占比很小。而大部分用户长期活跃在4~6个群中,多是由亲朋好友、同学同事、同好密友所构成的不足20人的小群。
大部分用户加入大群后,最常采取的动作就是关闭消息提示,这正是因为无意义信息打扰过重。当这种打扰持续增加时,用户多选择退群而去。
不论是微信群还是社交圈,都显现出“大群松散沉默,小群紧密活跃”的特征。
上述文字摘自《小群效应》章节:人人都想进大群,人人活跃在小群。上面提到的小群在建立的时候人们关系就更加紧密。那么,如果是在选课同学中随机建立的小群,相比大群,大家会更乐于发言讨论、互相帮助吗?由于一些心理学效应,这也是有可能的。
旁观者效应(Bystander effect)也叫责任分散效应, 在社会心理学中,指的是在有人求助时,被求助的人数越多,每个人出手帮助的可能性越小。或者说,在没有其他人见证/旁观者很少的时候,人们更倾向于做些什么。有可能在小群里大家互相帮助的积极性更高。
公开演讲恐惧症(glossophobia)指的是人们对公众演讲的恐惧,尤其是在很多人面前讲话时会感到压力。在网络空间中,可能也有类似的“不敢在大群里说话”的现象。在大群里提问求助,相当于让大家都知道自己不会这个题,对一些同学来说是有心理压力的。
讨论话题: 如果招募小助教, 对小助教需要做哪些培训?
帮助遇到较大困难的学生
通过监控作业提交情况,课程团队容易识别出遇到较大困难的学生(比如连续多次未交上作业也没有补交),但不一定有充分的能力帮到他们。
助教可以找这些同学问问情况,看看是否需要帮助,告知他们学业发展中心的学业咨询服务。如有必要,可以考虑联系辅导员。
如何写好文档
文档:相对固定。有“教材”的性质。那么,“如何写好文档”和“如何写好教材”有何异同?
相同:都需要一些权威性和稳定性。不同:在线文档容易迭代、更正、补充。
利用这一特性,可以持续提升文档质量。
一个问题被反复问,助教给相同的回答, 那么这就是文档需要覆盖的。
- 在风格上,尝试去模仿优秀、经典的教材或作业文档。
- 尝试将你写的文档大声念出来。
- 找人帮忙审阅你的文档。
- 善用大纲、折叠块等特性,让文档思路清晰。
- 将文档和代码灵活地结合、穿插。有时文档可以呈现为代码注释。
如何使用“小助教”(peer tutor) ?
引导同学互助,可以在助教答疑之外提供更广的覆盖。
在选课同学中选拔小助教承担答疑、习题课之类的工作,助教负责选拔、培训和督导小助教,来解决人手问题。
学期初,同学可报名小助教,并接受试讲的选拔和相关培训。
然后, 小助教负责习题课的备课和讲授,负责一些线下答疑。助教负责审阅、督导。在习题课后,可以让听习题课的同学也进行一些打分。
期末,结合整个学期的小助教工作成效,给予一定的加分/免除部分平时作业。
参考文献:
https://www.ccny.cuny.edu/chemistry/peer-led-recitations-general-chemistry(一个概念: Peer Lead Team Learning)
Eric Roberts, John Lilly, and Bryan Rollins. 1995. Using undergraduates as teaching assistants in introductory programming courses: an update on the Stanford experience. SIGCSE Bull. 27, 1 (March 1995), 48–52. https://doi.org/10.1145/199691.199716(对于大一的程序设计基础,这里采用的是上过课的高年级本科生来做小助教)
FAQ
在2023秋季学期的讨论活动中, 我们尝试收集了一些助教关心的相关问题, 并写了一些"一句话回答"供参考。
如何保证助教工作量的合理与平衡
A: 给各个环节设置工作量上限(比如仅在特定时间线下答疑) 以及明确排班(比如规定几位助教按周轮班线上答疑)
如何解决习题课没有学生来,但是很多学生有很高的答疑需求这个情况;同学参与度不高怎么办
A: 明确受众(通常是给基础差的同学讲习题课);供需匹配(搞清楚同学需要的答疑是什么形式). 比如, 如果同学更需要一对一的答疑辅导, 尝试前半段做习题课,后半段做一对一的线下答疑。或者尝试在习题课上做更多实际编码调试的演示。
如何控制答疑的程度,以避免泄露答案或使题目难度大幅降低
A: 事先明确答疑所能提供的帮助程度;不告诉同学当前能得多少分,只建议“下一步怎么做”, 而不是“做满分要怎么做”。
如何设计习题课
A: 明确习题课定位, 是回顾拓展课上内容, 还是编程作业思路做法; 明确受众和目标。
答疑辅导的内容应该如何设计才能兼顾同学的收获与承受能力,是否需要难度较高的额外题目
A: 多做变化和尝试,多问同学感受如何。通常主要受众还是基础较差的一部分学生。
请问,是否有必要接受学生的微信私聊答疑请求?
A: 如果允许微信私聊答疑,很难满足"学生的期待". 可以尝试提供其他的线上答疑渠道, 邮件, 网络学堂等。
负责答疑的助教需要具备哪些知识和能力
A: 熟悉课程内容(上课+作业)和部分延展内容;友善;逐步引导学生; 学习和改进的能力。