思考

现代教育的第三个方面是思考。我熟悉的是两种思考:工程师的思考和学术思考。

工程师的思考

工程师的思考能力,首先是问题拆解、有逻辑、有步骤地思考解决的能力。艾克打动他的雇主,拿到 Offer 的主要原因,就是他的雇主说的:他是一个”好工程师“,懂得把一个问题拆解,然后有逻辑、有步骤地思考解决。这是艾克作为一个工程师的思考能力。艾克说这是小熊老师教大家编程思维的时候说的,他一直记着。我硕士毕业的时候,参加朗讯贝尔实验室面试。面试官也是让我在白板前,边画边讲自己的毕业设计。我一步步地把毕业设计的题目进行拆解,然后有逻辑、有步骤地展示解决的过程。这让我拿到了贝尔实验室的 Offer。

除了拆解问题、思考解决的能力,工程师还有一种特别的思考能力:Debug(调试)。一个工程师在开发的过程中,最常见的思考就发生在程序出 Bug 时。刚开始学编程的同学,一看到程序运行出错,就傻眼了:这个老师没有讲过,怎么办?不知道怎么办了。而艾克现在遇到 Bug,他会不急不慌,先根据程序的报错信息,去理解问题,然后单步跟踪,分析原因,到网络上查找资料,然后改改程序,看看效果,接着再理解、分析、查找资料、修改。

我在实验室里每遇到一个新同学,和他一起做的第一件事,常常就是 Debug。一旦掌握了 Debug 的方法,程序对我们来说,就是透明的了。出了问题也不怕,总能把问题找出来。同学们掌握了这个,就能自己走路了。

艾克喜欢 Debug。我印象特别深的是,他曾经画过一幅画,上面画着一个小人(应该就是他),趴在电脑前,旁边写一个字:Debug。这说明艾克很喜欢 Debug 这种思考方式和状态。掌握了Debug 的思考方式,艾克对写程序,就有了信心:有 Bug?没关系,我懂 Debug 的思考问题的方法,就总能解决。

2024 年,腾讯公司创始人马化腾向全公司发出 “Debug” 思考的号召。我看到这个消息时,发出了会心的一笑。

学术思考

除了工程师的思考,我们还需要进行学术思考。

学术思考是一种批判性思考能力。它要求学生提出自己的创见,提出和评估多种选项,并加以证明。这是一种博士的思考方法。有一次我参加我们学校谈振辉老校长的讲座。休息时,他聊到当年他读博士时,他的导师李承恕教授和他解释“本科、硕士、博士的区别”的话。李承恕教授说;本科就是“你可以提出一个问题,但不解决”;硕士是“你提出了一个问题后,还要把它解决掉”;而博士是“你提出一个问题后,要想出好几种方法,然后从中找出一种最好的方法”。学术思考就是博士的这种思考方法:它要学生提出多个创见,然后评估,证明,找出最优。

不同领域的学术思考方式有所不同。比如:

比较来说,人文和社科领域的思维能力注重的是”言之成理“,各种方案并不是非此即彼的,而是可以并存的。而科学领域的思维能力注重的是推陈出新,要比现有的更好,因此需要通过客观的指标,分出高下。因为李承恕老师属于的是科学领域,所以他谈的也就是科学领域的学术思考方法。

工程师的思考,产生具体的产品;而学术思考,产生的就是论文。不论是工程师的思考,还是学术思考,我们都需要在实践中学习。


Index Previous Next