生物行移动版

主页 > 学术产业 > 生物产业

AI时代的编程教学:从语法到思维

面对学生使用AI“抄近路”的担忧,神经科学教育者正在探索如何将AI工具转化为教学机遇。一位教育者分享了自己在编程课上的实践:通过明确AI使用规范、加强课堂讨论和设计评估方式,她试图在帮助学生利用AI的同时,确保他们真正掌握代码设计、调试和评估的核心能力。其核心洞见是:编程教育的重点正从记忆语法转向培养“设计计算流程、评估输出、协作决策”的更高阶思维。


传统教学与AI的张力

许多神经科学学生最初学习编程,是靠改编别人的脚本。作者回忆自己读博时,花了大量时间逆向工程MATLAB代码。如今,新程序员有了AI代理,不仅能调试代码,还能教他们如何编写。这引发了一个问题:那些为掌握代码理解而必要的“挣扎”时间,在多大程度上是必需的?

AI在教育中的复杂图景

AI正在改变教育,但并非均匀地改变。在计算机科学教育领域,对AI的看法也各不相同。一些学者认为其弊大于利,而另一些则在课堂上与AI共教。大多数教育者认同:即使学生不是从头编写代码,他们仍然需要能够设计和调试代码。

从学生视角出发的课堂实践

作者在2022年设计了一门面向生物学学生的编程课,当时只有少数学生在使用AI。如今,几乎每个学生都在以某种方式使用AI,但他们自己也困惑于该如何使用。学生并非都在作弊:许多学生害怕错过AI这个工具,但又不愿违反学术诚信;最弱势的学生更担心作弊而较少使用AI;女性使用AI少于男性。如果不正视这些日益扩大的鸿沟,可能加剧教育中已有的不平等。

建立共同规范:一堂课

今年初,作者在课堂上开启了关于AI辅助编程的对话。她向学生展示了AI使用的七个可能层级(从提出概念问题到编写完整程序),让学生先讨论哪些适用于课程的不同环节,然后匿名投票。班上约90名学生给出了不同的答案,但总体上与作者相当一致:他们同意不应让AI编写每周的编程作业;对于期末项目,作者比学生更愿意接受使用AI(因为学生此时已有足够知识来生成小代码片段并编写测试)。

评估方式的变革

为防止学生用AI完成整个项目,作者增加了更多纸笔考试:让学生预测输出、调试代码或追踪代码片段。期末考中,学生还被要求反思自己在项目中做出的选择,以确保他们并非生成了一堆自己不理解的代码。AI时代带来的变化,使作者能评估学生更复杂的认知任务(预测、评价、修改),而不仅仅是记忆。

因课制宜的规则

在神经生物学实验课上,AI可用于编写代码,但不能用于撰写实验报告。作者坚信写作与思考密不可分,因此自己也从不用AI写作。教学目标和学生群体也是关键考量。这门课不是为训练软件工程师而设,而是为对编程好奇、希望将其加入技能包的学生设计。学生常带着对编程的恐惧进入课堂;结课后,有些学生开始在个人项目、其他课程或研究中尝试编码。如果更多学生结课后继续编码,作者就成功了。

鼓励坚持,缩小差距

数十年的研究表明,在编程领域,性别和社会经济差距依然显著。作者在教学中反复思考两个问题:“什么能帮助学生学习?”和“什么能鼓励他们坚持?”在理想情况下,课堂时间应花在批判性思考代码选择上,而不是描述何时使用冒号或分号。AI可能为那些原本会放弃的学生架起一座桥梁。

坦诚面对:老师也使用AI

上周,一位学生私下问作者:“你编程时用AI吗?”作者毫不犹豫地回答:“用。”她向学生展示了AI工具如何集成到她的编码环境中,如何通过反复迭代让代码达到所需效果,以及AI如何基于文献搜索提供替代方案。她总结道:我们不应仅仅因为某些习惯(包括训练学生的方式)已成为一种“成年礼”就固守不放。如果目标是训练学生成为优秀的科学家,就需要认真思考,如今成为一名优秀科学家需要哪些新技能。这些技能不是识别语法,而是设计计算流程、评估输出,以及——也许最重要的——在科学探索的下一阶段协作决策。

(责任编辑:泉水)