王垠:对博士学位说永别

本文作者:王垠,四川大学97级本科毕业,保送到清华大学计算机系直博。期间曾在清华大学计算机系软件所就读,主要进行集成电路布线算法的研究。在此期间,他因《完全用GNU/Linux工作》一文和对TeX的推广等“非研究成果的业余东西”而出名。 在只剩一年就要博士毕业的时候,他申请退学,并将1万7千余字的“退学申请书”(题为清华梦的粉碎)公布在网上,引起舆论界一时对教育体制、理想主义等的热议。

下面是王垠的博客全文:

经过深思熟虑之后,我决定再次“抛弃”我的博士学位。这是我第三次决定离开博士学位,也应该是最后一次了。这应该不是什么惊人的消息,因为我虽然读博士10年了,可是我的目标从来就不是博士学位。我在寻找更重要的东西,而且那个东西已经被我找到了。所以我的“博士生涯”其实完成了它的使命,基本上可以圆满结束了。

如果你从我之前的博文判定我现在生活在我所向往的环境中,那么你就误会了。我学到了我想要的东西,但是却发现学术界不再是我向往的地方。相反,它阻碍了我的前进。很显然,博士学位这个东西其实已经被学校和学术界作为利用廉价劳动力的“无形锁链”。你想要“博士”的头衔,那么就廉价给我们干活吧,能出论文的就出论文,能写代码的就写代码。我根本不需要“博士”这个头衔来显示自己的价值,所以我抛弃学位,离开学校,离开学术界,是一点都不心痛的。

思想的监狱

如果你以为学术界意味着思想的解放,对真知的无私分享,那么你就错了。涉猎不深的人往往有一种美好的幻觉,以为老师都是在无私的传授知识,而同学们都在无拘无束的讨论。可是等你深入到一定程度,就会发现其实很少有人对于知识是无私的,连世界顶尖的科学家们也不例外。他们“分享”给你的东西,往往是一堆琢磨不透的符号和公式,他们提出一堆可怕的术语。他们告诉你的只是思维的“结果”,而不是思维的“方法”(也就是所谓“直觉”)。等你通过自己的独立思考得到同样的东西,却发现这些大师们其实一直把直觉隐藏在很深的地方,故意的让你知其然而不知其所以然。他们甚至会诋毁直觉本身的价值,试图让你相信他们没有通过使用直觉就想出了那些公式,试图让你相信只有那些吓人的公式,定理和证明才是可靠的,而直觉是不可靠的。可是真正的直觉却是非常强大的,只要得到了它,你就可以完全的理解那些公式,而且会知道它们是怎么来的,甚至发现里面存在的问题,进而想出新的公式。

然后你就会恍然的发现,你曾经认为的“思想的天堂”,其实是“思想的监狱”。你会发现你心目中的很多大师们其实不是真正的科学家,而是政治高手。你会发现身边有很多人其实是故意在你面前提起一些术语,以此来显示自己的“高深”。当你直言不讳的道出这些东西背后的秘密,他们就不说话了,然后就对你怀恨在心,希望你早点消失。当你给那些提出这些术语的大牛们发email,试图核实这些术语背后的直觉,他们会很快的停止回复你的邮件。当你试图从教授们口中得到这种直觉,他们会不耐烦的对你说:“你问这种问题有什么意义吗?这东西就是这样的!” 这说明了什么呢?这说明他们害怕了。他们害怕自己的地位受到威胁,他们害怕这种直觉一旦被大多数人掌握,他们就不再是高高在上的“学术权威”了。人们就会说:“那个东西其实不过是……”

这就是我这些年来所亲身经历的。我的同事们其实都不知道,他们所景仰的大师们提出的看似高深的理论,好些已经在我心目中被默默的“杀死”了。对我来说,它们不过是用一堆吓人的数学公式,翻来覆去的表达一些用几句话就可以说清楚的东西,而且它们好多其实已经被更加简单的东西所超越。所以大师们常做的一件事就是招收“门徒”,只要有人愿意做他们的接班人,把自己的工作“基于”他们的理论,他们提出的复杂而空洞的概念就可以一直存活下去,而他们就可以保持自己的地位。所以你就发现一些可笑的现象,本来一个新概念跟某个老概念没有关系,却被生拉硬拽在一起。本来一个概念可以被独立的理解,却被牵扯到一堆别的概念中,被搞得纷繁复杂。

这就是为什么我曾经提到,我经常用两个星期的时间就“灭掉”了某些领域长达20年的研究。这并不说明我是天才,这只是说明很多人在玩弄学术的把戏,而我看透了他们的把戏。看透了这些把戏并不能带来实际的效益,却可以让我自己节省下时间来解决真正重要的问题。但是我看不到学术界在这方面有任何改进的希望。所以,为了思想的自由,我不能生活在学术界。

论文的游戏

我曾经以为我的专业(程序语言)是计算机科学里面论文水分最少的地方,但是其实并不是这样的,天下乌鸦一般黑。程序语言专业的论文与其它专业唯一的区别是,这个领域的人玩的把戏更加巧妙。这些论文动不动就触及 Church,图灵这样的人物提出的概念,所以就算里面没有任何新的内容,你早就被吓倒了,就别提看出里面的把戏。可是由于我看穿了一些核心概念的本质,所以经常浏览一些论文都发现其实没有任何新东西。这些论文有些甚至来自某些本领域众所皆知的“巨星”。由于他们地位显赫,这里我就不点名冒犯了。

很常见的一个套路就是,把一些很简单的“程序”用一堆“数学符号”改头换面写出来,把它们叫做“逻辑”或者“类型系统”。人们都崇拜数理逻辑,因为他们看不懂那一堆的符号和推理规则。可是经过自己的努力,我却看透了很多逻辑学家的把戏。我也可以玩这种把戏,设计出新的逻辑。可是我也知道其实我们并不需要这些逻辑,所以我从来不为此发表论文。可是这样的关于“程序逻辑”的论文,仍然频繁的出现在最高档次的学术会议。从开头就能猜到结尾,一点悬念都没有,让我觉得非常无聊。

上个学期,我跟导师做了一个学期的研究,内容是关于“类型系统”。说是“跟导师”,但是其实他只起到绊脚石的作用。他不但没有真正的参与讨论,而且明显的对于我深入的发现有抵触情绪,并且不断的打击我。我用于“说服”他所使用的精力,比我用来研究的精力还要大好几倍。到头来我却发现,原来他根本没有听我在说什么!我总是发现一些复杂的类型系统的功能,要么就是完全不可能实用,要么就是可以用已有的更简单的方法实现。所以这些发现其实是“杀死”了好几个长达几十年的领域,把它们归并为同一个非常简单的东西。可是,这些发现消灭了一些不必要存在的东西,却没有带来任何“新东西”。所以他总是对我说:“你的这些想法有什么用吗?” 然后我才发现,原来他所要的,并不是深入的简化的理解,而是别的东西。这个“别的东西”,当然就是论文和经费。很显然,导师们只是把学生作为可能给他带来论文和经费的人。他们更喜欢那种看不透事物本质的,对什么“新概念”都持手舞足蹈态度的学生。因为这些学生可以很快的制造出更多更复杂的新概念,写出看似高深的论文,然后从 NSF 等研究机构要到钱。

所以说,深入本质的认识,其实在学术界是不受尊重的。因为深入的认识往往是很简单的。如此简单的东西,似乎每个人都能做,又怎么拉得到经费呢?

政治的泛滥

我可以不谦虚的说,我是这里最好的学生。我身边的同专业同学,没有一个可以超越我所能做到的事情。而他们能做的事情,却没有一件是我不能做的。在 Dan Friedman 的两门高难度的课程都得到 A+, 在 R. Kent Dybvig 的 Scheme 编译器课程得到 A+,并且在某种程度上超越了他们。在两个星期之内,完全凭自己的思考写出正确的 CPS 变换(10多年的研究成果),以及 ANF 变换(我导师的最重要成果)。多次在两个星期之内,“灭掉”某些领域20多年的研究。对很多东西有自己独到深入的见解。在工程上有 Google 的那个项目,以及我自己的一些项目,……

可是这所有的一切,都没有让我受到同行们的尊敬。相反,由于我喜欢说真话,他们恨我又怕我。他们怕跟我讨论自己的研究,因为我总是能很快的看出它们的本质,所以跟他们说话总是感觉隔着一层什么东西。那些精于玩弄政治的人,显然更加得到人们的赏识。我本来不想把这些“业绩”摆出来的,实际上我一直很谦虚,都没有在人面前提起过这些事情。可是显然,在 Friedman 和 Dybvig 的课程上挣扎不堪的同学,在某些会议发过一点鸡毛蒜皮文章的同学,现在很是趾高气昂,他们当然希望别人都不知道我的优秀。他们喜欢厚着脸皮的说出一些早就被我看透的术语,说出来的时候声音都在打颤。

可是他们为此失去的实在是太多了。我本来可以帮助他们的,可是由于他们的自私和自大,失去了得到我的帮助的机会。他们的论文(甚至博士论文)里面的内容,其实好些是我几年前就得到了的结果,只不过我懒得为这些鸡毛蒜皮的东西写论文,我本来可以把这些东西免费送给他们作为论文发表。记得有一次,几个 Friedman 课上的同学想做一个暑期项目,试图改进 miniKanren (Dan Friedman 设计的逻辑语言) 的效率。那个时候我早就已经重新实现了 miniKanren,并且独立的加入了一些扩展的功能,比如 constraint logic programming。我一听到他们这个计划就告诉他们,miniKanren 所使用的 substitution 的数据结构是 association list,查找时间是线性的,显然效率很低。使用另外一种“函数式数据结构”,比如函数式的平衡树就会好很多。可是当他们听到这些的时候,居然保持了一种可怕的沉默,就像我并不存在于他们面前!一年多之后,他们发表了一篇论文,里面的基本内容就是我告诉他们的那些话。当然,署名和“致谢”里面都没有我。我根本不在乎这么小的想法,我本来就觉得根本不值得为此写论文,写个blog都还差点。可是他们一点谢意也没有表达,倒在我面前炫耀,真是可笑到了极致。如果他们愿意多向我请教,恐怕发表论文的时间不是一年,而是一个月。

另外还有好几次类似的情况,我都不想说了。后来我才从一个同学口中得到一些真正的信息。他说,某些人喜欢在听到别人好的想法的时候,进行故意的打击,或者漠不关心的样子。等别人对他们自己的想法失去兴趣之后,他们却把那想法拿出来署上自己的名字发表。这种事情就曾经发生在他的身上。他的导师一直打击他,以至于他写出来的论文两年都没有发表。等他决定离开之后,却发现自己的想法被导师和另外一个人发表了。没有署上他的名字。

这就是我越来越不喜欢跟人讨论的原因,因为很多人得到那些想法,就会想玩弄一些花招把它们据为己有,以此出名,最后却连个谢字都不说一声。我看到这种现象不只存在于我的身边,而且存在于整个学术界,这是学术产业化不可避免的结果。学术界不做产品卖,就得拿“想法”出来卖。可是想法这个东西是如此之奇怪,你一旦告诉别人,别人就有了这个想法,你又如何证明这个想法是你的呢?所以学术产业化的结果就是一个没有思想交流的世界。

有这样的政治和勾心斗角,我留在这里还有什么意义呢?我在这里,以至于整个学术界,其实已经没有什么值得合作的人了。

何去何从

当然接下来我需要思考的是,我应该做什么。显然,我所学到的知识可以轻而易举的给我带来高薪的工作。可是我也知道,其实程序语言归根结底就是那么几个小把戏。所以我更愿意探索更加广阔的世界,学会新的东西,找到真正值得合作的人,创造真正的价值。另外,我也会逐渐把我知道的这些“把戏”以直观而容易理解的方式公诸于众,让权威们的神秘面纱都随之消失。