教学让你保持年轻,或者说 Brian Kernighan 教授是这样说的
快速阅读: 据《普林斯顿日报》最新报道,布莱恩·科尔尼汉教授探讨了从贝尔实验室回到普林斯顿大学的教学经历,强调跨学科教育及AI对计算机科学教育的影响。他指出,学生需学会辨别AI提供的答案,平衡利用AI的优势与避免依赖,同时建议掌握亲自完成任务的能力,以适应快速变化的技术环境。
在1969年以电气工程系研究生的身份进入普林斯顿大学后,布莱恩·科尔尼汉于2000年以计算机科学系教授的身份重返校园。在此之前,他曾短暂效力于著名的贝尔实验室(即美国电话电报公司旗下的研究机构)。他跨越学科与学生互动,并在人工智能时代重新思考了计算机科学入门的教学方法。《普林斯顿日报》采访了科尔尼汉教授,希望了解更多关于他来到普林斯顿的经历、他对计算机科学教育的方法,以及他对人工智能可能如何塑造学生学习未来的看法。
这篇访谈经过轻微编辑以提高清晰度和简洁性。
**普林斯顿日报(DP):** 是什么让你最初对计算机科学领域产生了兴趣?
**布莱恩·科尔尼汉(BK):** 那是很久以前的事了。我大学时第一次接触电脑,觉得它有点有趣,尽管那时我对它了解不多。它看起来像一台会闪烁灯光的设备,但人们认为它很有趣,不知怎么我就误打误撞地学了一点编程。
**DP:** 是什么促使你开始在普林斯顿教书,为什么决定留下来?
**BK:** 我来这里攻读研究生学位,主要在E-Quad对面待了四年半。毕业后,我去了位于新泽西州北部的贝尔实验室工作,我在那里工作了30年,然后回到普林斯顿从事计算机科学工作。这不是一条寻常的道路。我在贝尔实验室度过了一段非常愉快的时光。大概有25到30年的时间,那真的很有趣,我也过得非常愉快。但后来开始感到有些不安定。公司发生了变化,周围的环境也随之改变,我有机会从事教学工作。我在哈佛教授了CS 50课程,这是一个庞大的课程。我也曾在普林斯顿作为客座教授,每学期讲授一门课程,还有一年作为访问学者,那也很有趣。所以当普林斯顿向我提供职位时,我接受了。回到普林斯顿感觉就像是重新开始一段新的生活,或者类似的感觉。这非常有意思。你可以结识许多有趣的学生活动参与者,可以与计算机科学领域的有趣同事以及其他院系的人交流。不断学习新东西有助于保持你的活力,至少不会衰老得那么快。我享受教学的一部分工作,但我也有不少独立的研究工作。指导工作总体而言很有意思。我只是刚刚在福布斯学院结束了一场会议,因为我长期在福布斯学院从事学术指导工作,为即将入学的新一批大一学生做准备。
**DP:** 你为什么决定离开贝尔实验室?
**BK:** 当你初次加入时,这个世界还很年轻。这些都是计算起步阶段的日子,这意味着有许多有趣的事情值得研究。随着这个领域的发展,这种情况在一定程度上不再成立。另一个原因是,当我最初加入时,贝尔实验室确实是纯研究。你可以选择一些有趣的东西来研究,没有人会问“你这季度为我们做了什么?”之类非常短期的问题。这种状况正在改变,我开始感到有些不安定。公司自身也对其运营方式做出了重大调整。它把自己分成了多个部分,财务机制也开始发生改变。你需要自行寻找研究经费。这些变化并未直接对我产生影响,但它们确实存在,我认为或许是时候考虑一些新的方向了。此外,我喜欢我所从事的教学工作,尤其是在哈佛的大规模课程中。我还发现我可以很好地组织大规模课程,这是我尝试之前未曾意识到的事情,所以我不用为此担忧。这是我的“洗礼之火”,这是一句俗语。
**DP:** 在这里的经历对你自己的工作以及对计算机科学教育的方法有何影响?
**BK:** 我曾多次教授一门名为COS 109的课程:我们世界中的计算机。那些选修这门课的人显然不是技术人员。说实话,他们是为了完成QCR要求而选修这门课的。但是,尝试向那些兴趣和专长完全不在技术领域的人解释什么是计算和通信技术,它们是如何工作的,它们如何改变我们的世界,以及你应该如何应对它们,这既有趣又具挑战性。很少有人在修完这门课后继续深入学习计算机科学,但这些人其实很擅长其他领域的事情。所以尝试向他们讲解计算机科学是一件很有趣的事情,然后了解他们在自己领域喜欢做的事情并观察他们做得很好,这也是一种乐趣。
**DP:** 整个职业生涯中,你强调了跨学科研究的重要性,并致力于让非技术背景的人也能接触到计算机科学。是什么启发了这种做法,你如何看待它对来自不同领域的学生的影响力?
**BK:** COS 109让我认识了许多人——不仅仅是学生,还包括其他领域的教职工。在过去十到二十年间,计算已成为其他学术领域的重要组成部分。我倾向于与从事这类工作的人交流。我与法语与意大利语系的Effie Rentzou合作开设了一门课程,还有一门关于人文学科数据的课程。自数字人文研究中心成立以来,我一直积极参与其中。这是一种从其他领域获取信息的途径。我还在这里教授独立研究研讨课。这些课程的学生几乎全是计算机科学专业的JP三年级学生,他们的独立研究项目是数字人文,这是他们的独立研究课题。他们研究各种稀奇古怪但有趣的数据,这些数据大多源自人文学科。换句话说,这不是金融类数据,也不是像华尔街、ORFE那样的数据,也不是像物理学实验中得到的那种数据。它涉及人们行为的一些奇特之处,书籍特性、历史、人们的社交互动等内容。这些课程的学生开展数据分析,他们探索数据,寻找规律,努力发现一些有趣的内容。他们具有技术背景,但也对其他领域感兴趣。
**DP:** 随着人工智能和机器学习在当今社会中发挥着越来越重要的作用,你认为下一代程序员面临的最大挑战和机遇有哪些?
**BK:** 要是我能知道接下来会发生什么就好了。如果你仔细考虑一下,像ChatGPT这样的大型语言模型问世还不到两年半。它们已经对世界——尤其是学术界——产生了巨大影响。如今它们比刚出现时更加复杂,而当时它们就已经相当了不起了。我认为这是一个没人能很好地回答的问题。今天我在福布斯时我们曾讨论过这个问题。课程应该如何应对大型语言模型的使用?你应该被允许用它来写论文吗?当你把这类问题应用到你可能选修的不同课程中时,我认为答案并不是一样的。例如在COS 126课上,你不应该用这些工具完成编程作业。我认为这是公平的。但在实际工作中,人们常常会用到这些工具,因为它能为你提供某种优势,帮助你解决更复杂的问题。你怎么平衡这一点呢?简单来说,我也说不上来。在我的秋季班上,我告诉学生他们可以用生成式AI来更好地理解正在发生的事情。但在作业中我是不允许使用的。因为学生们提交的作业明显超出了126课程学生的水平,很显然他们在作业中还是用了它。然后我们在课堂上讨论了权衡——你得到了问题的正确答案,但你不知道自己在怎么操作。但这只是针对一门课中的部分内容给出的答案。情况千差万别。上级的指导意见大致是,每位讲师都需要自行决定。另一条指导原则是明确告知学生具体要求。但每门课的具体要求各不相同,这确实是个挑战。
如果今天我可以给学生和有志于成为程序员的人一条建议,那会是什么呢?学习如何亲自完成任务。可以利用机械辅助工具,但要了解你在做什么。这些大型语言模型的一个普遍问题是,它们会给出看似自信但实际上毫无意义的答案,如果你对自己的操作不够了解,你就无法识别出这些无稽之谈。我能做到的最好结果就是让学生意识到AI的存在,这样他们可以在合适的时候有效利用它,并在不合适的时候保持警惕。在COS 109课上,我曾经布置过编程作业,但现在你不能再这么做了,因为学生可以直接在网上找到答案。我将一些实验改为手工形式。对于第二次实验,我告诉学生可以找一个AI模型来帮你完成。然后我让他们观察发生了什么,哪些有效,哪些无效,并从这次经历中学到了什么。那些认真对待作业的学生,而不是仅仅走过场的学生,可能会从这次经历中学到东西。但我觉得这将是一个不断变化的目标,所以我尽量走在前面,鼓励或迫使人们也去学习。学会在哪里使用AI以及不应该在哪里使用它,还要学得足够多,以便能够检测到它给出错误答案、胡编乱造或者撒谎的情况。
(以上内容均由Ai生成)