听到有教程序设计入门课的老师抱怨:“现在的学生不学,布置的任务不做。”当有人指出学生程序设计基础差,而暗示教程序设计的老师应该负责任时,又委屈了:“难道说我讲得不好?我如此精心地备课、讲解,学生听不明白,学不会,有什么办法?”
这个委屈可以理解,但学生没有通过这个课程学到应有的知识却也是事实。而程序设计入门的学生,诸多的坏习惯并不严重,是应该要学会的。
没有人会指责尽心教学的老师“讲得不好”。但“没有教好”和“讲得不好”不是一码事,前述的委屈发错了。极端点,有的老师真讲的不行,但他善于组织与鼓动学生,学生能够投入地学习,“讲得不好”,却也可以算“教得好,能教好”了。我曾经写过一篇短文《大学中教与学的几个话题》,探讨了“教育和教学不是一码事,教学和上课不是一码事,上课和讲课不是一码事。”。真是这样。
发这个感慨源于一位学生的博文。原文不长:“学习c语言差不多有两个多月了,我还只是仅仅跟着老师的步伐:上课听一下,课下做一下老师给的作业。我知道要学好这个专业,这样是不够的,但是我真的不知道从何下手,怎样学好这个专业的基础课c语言。希望老师能够给我一点指示。”写博客是我带他开始的,C语言却不是我教,我关注了他,我知道,此处“老师”指的就是我。
教一门课,“讲好”是必须的,但作为教师,不要自满于“讲了什么”,讲得再多再精不算,关键是学生学了什么,围绕学生的学去讲。要在乎学生“学到了什么”。课堂不光是讲课的,是组织课程,指导学生学习的阵地。抱怨学生不听,听起来委屈,但应该想着点改变,不听就不讲了,换个法子帮助学生学。其实,学生“学到了什么”也不是最重要的,最重要的是“学生做了什么”,这才是出功夫的关键。课程组织中,指导学生的课后学习,非常重要。
在上面同学的问题中,显然老师布置的作业喂不饱想学的学生,不足以保证教学效果。这样的状况久了,学生想学也上不去了,逐渐也就不想学了。如此逻辑,学生不学,教师责任在首位。在上述问题中,学生的课外学习如何开展,显然更缺。
我给学生的留言,只能鼓励他课外多实践,并且指点下如何找到和设计自己的实践。对任课教师所起角色的缺失,我无能为力,只能呼吁教师也要改变。我开《大学生学习》课,越讲越觉得,应该让老师们知道学生应该有什么样的学习。再老的老师,也需要更新自己的观念。老师不光是讲课的,改一改,让学生的学习得到更多支持,这是我们教育局面改变的基础。
PS:科学网上有人留言:“正在这样做,不认同这句话:其实,学生“学到了什么”也不是最重要的,最重要的是“学生做了什么”,这才是出功夫的关键。学生学到了什么,是我最关心的事情,因材施教的目的就是学生要学习到东西。照目前来看,很快就需要做一个评估了:按照因材施教的原则,一个老师最多能教多少个学生?不知道您做过这方面的研究没有?”我的答复:“不是研究,正在实践。人多了不能“因材施教”了,各材分别是什么材都没法去差别。点好一灶火,或烧开一锅水,把材们放进去,怎么一个折腾法,由他们去,只要在折腾,各住会折腾出该有的样子。人多是个现实,只能这样做。班级制就是在限制因材施教的,更无论大班了。我强调“做什么”的语境是工程教育,提到的程序设计适合,科学和人文的教育是否这样,没有想。“做”没有否定去学,讲究学做结合。不把“做”提到重要位置,那点“学”是靠不住的。”
锅、水什么的,我都被自己逗乐了,贴出来,作为补充。