昨天和前天,我本学期讲授的两门课程,都以考察形式结课了。学生们上台做了展示,然后都有问答环节进行追问。就如同这一学期每次上机课之后,我们例行做的那样。

看起来,这不过又是一个学期。《信息系统开发》这课我从11年就开始讲,到今年已经是第14个年头了。《机器学习》(原先叫《深度学习》)虽然还算是次新课,不过也已经教到第3轮。然而,今年非常不同,因为今年这次教学改革,我是让 AI 全面渗入。

从我第一年教机器学习这门课开始,我就允许学生使用 AI 。甚至发现学生用得不得法,我还给他们做了演示。到了去年,就有专门的一讲,介绍 AI 的使用。今年却已经是从「选用、可用」变成了「必须用」。

「必须用」是指每一次上机,包括期末作业,学生都需要汇报用了什么样的 AI ,解决了什么问题,或者没有解决什么问题。当然有时候 AI 并不那么聪明,于是还需要进一步汇报 AI 辅助之后又带来了什么新问题,如何换用其他方式用 AI ,或者换了什么其他的 AI ……最终结果如何,有何收获。

一开始,我给学生推荐的标配是 Deepseek R1 组成的助手。这个工具,你可以参考这篇文章。。。

后来,我发现对于编程问题,学生经常忘了提供足够多的上下文,于是告诉他们应该利用 AI 编辑器。这样 AI 可以看到你工作空间里面的全部文件,再结合你及时提供的报错信息,回答起来更加有的放矢。而当时免费又足够好用的,也就剩下 Trae 了。

这些模型和工具,便宜好用,比起去年同期,有的新出现,有的进步飞跃。我也了解它们的局限性,所以预估学生会在这个过程中碰到不少障碍,摸爬滚打之后,能和 AI 变得更加熟悉,积累不少有益的人机协作经验。

在这两门课上使用 AI ,也恰恰是因为编程这项任务的特性——足够规范,大模型训练时掌握的规则、知识和样例就足够多,而且编程结果的检验非常客观。

我信心满满地把模型、工具、新的规则融入了课程,期待着收获。

然而这一学期上完,我心里五味杂陈。

收获当然是有。很多学生表示这一学期上完,对 AI 能力算是见识到了。原本对编程掌握不足,生怕自己最后系统做不出来,但是后来发现 AI 多轮对话、迭代之后,无论如何也能搞出足够堪用的功能。比起原先到处找「参考」代码,复制粘贴一通折腾,遇到问题都不知道去哪儿问,好到不知哪里去了。

特别是对于那些真正能找到用户真需求的学生,这下可以免除后顾之忧,把自己全部技能点都放在调研、思考、共情、沟通上,快速搞出原型后,不断征询用户反馈,迅捷迭代改进,精益求精。有的小组到期末甚至已经有了200+的用户,觉得一条光明笔直的创业之路在脚下徐徐展开,特别开心。

嗯,这些原本是为师预期的啊,我很欣慰……

且慢,不出意外的事儿,咱就不用多费笔墨了。还是说说那些意外吧。

我在今年年初设计课程的时候,着实没有想到 AI agent 和推理模型的进化居然如此迅猛。

第一波的浪潮是 Manus 推起来的。但很快就由 Flowith, Genspark 等各领风骚。至于 Fellou 这样的,干脆把自己伪装成浏览器,也在践行着 AI agent 的功效。

这东西对我的课程有什么影响呢?

这么说吧,我让学生提交几份需求分析报告,然后扔了进去,几分钟之后,好几个原型系统就造出来了。

我当众演示这些原型系统的功用,操作着各种界面和按钮。我一边说,一边扫视整个儿教室。学生们反应不一,有惊叹,有开心,有窃窃私语,有眉头紧锁,有的眼神中出现了迷茫。

是啊,迷茫。如果自己努力了3年学到的系统开发技能,运用起来原本需要几天甚至几周的时间来打磨一个原型,却被 AI 几分钟超越,那努力的意义在哪里呢?