标题: 清华王垠事件, 你听说过吗 [打印本页] 作者: ggads 时间: 2005-10-1 标题: 清华王垠事件, 你听说过吗 Segmentation fault ! Core dumped —我写本文的目的
Repair what you can — but when you must fail, fail noisily and as soon as possible. —Basics of The UNIX Philosophy
修复你能修好的—但是如果你必须失败,那就尽快喧闹的退出。—UNIX基本哲学
正在我决定鼓起勇气后来跟上,准备拿起一本DOS大全从头啃起的时候,一次偶然的机会我接触到了Linux。后来又因为The Art of Computer Programming,接触到了Knuth。我才发现,好多课程上讲的那些东西原来如此低级。有些东西学了就过时,学它干吗?我并不比别人落后多少。我一再的思考,什么是计算机科学?是什么让我们计算机系的人不同于其他系的。我有时候认为有了答案,但是后来答案又被我自己推翻。在思想的混乱中,我发现我逐渐摆脱了旁人的标准。我自己学会了Linux,学会很多种当时别人听都没听说过的计算机语言。我开始发现学习再多的语言也没有意义,我应该想办法发现它们本质的共同点,想设计一种完美的简单的语言。我学会了LaTeX,用来排版我的作业和本科论文,还设计了一个标记语言和一个程序,帮我爸爸自动排版出非常漂亮的英语试卷。我接触到MMIX这种先进而漂亮的处理器,还因为找出Knuth书里的错误得到两张支票和一些礼物。这并不是什么值得炫耀的,但是这给我对计算机的兴趣很大鼓舞。
但是我的生命中出现了这样一门课程。它改变了我对老师的看法,让我觉得上课原来也可以如此有趣。这就是计算几何。上课的人很少,只有十来个人。因为听说这门课很难,很多同学都没有选,但是我就是那种知难而进的人。老师上课的方式跟别的课程很不一样,大家坐在一个小教室里,老师有精美的幻灯片,有动画,不时还插入一段大科学家,大哲学家的名言。有一次老师讲前美国数学会长 Graham 的故事,他居然同时也是国际杂耍联合会主席,我才发现一个科学家也可以那么有趣。上课时老师会停下来很多次让学生提问题,下课大家都积极踊跃的讨论新奇的问题。课程的评分方法也很特别,平时成绩占到30%的分量,作业分为几种分值,可以自己选择做不做,作业的总分数乘以30%,加上最后大作业的分数乘以70%,就是最后的得分。我有一次因为没来得及按时交作业,后来发现作业的题目很有趣,就对作业要求的算法写了一个详细的分析,还花了一整夜写了一个算法演示程序交上去,老师也接受了这个迟来的作业。后来我的作业分数就大大超出了所要求的30分。说真的,这门课太有趣了,我就只逃过一次课。但是还是有时候人数不到一半,因为其他课程压力太大,有人都去复习别的课程了。但是老师从来不点名,还对逃课的同学表示同情。还问我们在座的有没有其他课特别紧张的,下次课可以不来。真是让人感动。
远远看去外观华丽的有着先进的工作站的实验室,却没有可以安心看书的地方。机器挨着机器人挨着人,书都没地方放。师兄师姐们都在忙着用word写论文,不时有两个人隔着几行机器大声谈话。实验室通风不好,还有一个大型工作站在嗡嗡作响,我进去一会儿就觉得头晕,所以后来就不想去了。PC机以前都是公用的,每次都会用不同的机器,却没有我想用的软件,麻烦死了。好不容易实验室买了新机器分配给个人,装上一个 Linux 系统开始写程序,还在Sun工作站上安装了多达1G的GNU程序。却被一个师兄嘲笑说那种跟DOS一样落后的东西你居然也用。于是我写了一篇文章叫做《完全用Linux工作》,放在主页上驳斥这种观点。矫枉过正,确实写的有点偏激,结果引起网上linux界轩然大波。后来想了想,个人的工作方式不一样,很多艺术家确实需要可见的人性化的操作方式,虽然Windows有很多缺点,但是对Windows操作方式的批评确实没有道理。操作方式本身没有错,Mac也有类似的操作方式。后来我又发现几乎全校的论文都是word排版的,那些公式质量太差,看起来头痛,才发现很多学生害怕数学的原因之一。所以又写了文章宣传 TeX,希望中国产生更多漂亮的数学书。这下子我出名了,真没想到,出名不是因为我的研究成果,而是因为这些业余的东西。我起初不希望我因此出名,但是看到旁边的人都用上了 TeX,我觉得我还是做了一件好事,至少让论文看起来漂亮了一些。
计算几何课的一次作业,我为了写一个算法的演示程序,花了3天时间学了一点Java语言,正好能够完成那个程序。我开始接触到TeX的底层细节,看完了The TeXbook,并且找出一道练习题答案的错误。开始移植gbkfonts程序,作为我的CWEB语言的练习。看完了几乎所有 Xlib 的手册,了解了 XWindow 的工作原理。我接触到 Scheme,并且做完了 SICP 的大部分习题,还自己想出好多问题用Scheme实现算法。后来花了好几个晚上,把MIT课程6.001的录像下载回来。我才发现教授上课可以如此搞笑有趣,上课时戴上巫师的帽子,做一些滑稽的表演。我终于明白,有的计算机科学家居然可以去好莱坞演电影 这个课程让我领会到 LISP 的强大,改变了多年以来对这种古老语言的误解。它让我感觉到在看似纷繁复杂,不断更新的计算机语言的世界,还有那么一种永恒的美!我开始发现TeX语言过于复杂,想设计一种利用Scheme语言来排版的系统。接着我又学会了 Common LISP,并且开始用它来设计研究计算几何的一个函数库。另外还找了一些希奇古怪的程序来玩,写了一些心得体会放在网上给别人看。无可否认,这些都是工程技术的东西,不是科研。但是看到很多“计算机科学家” 写的程序一团糟,我才发现程序设计是一门艺术,而不是科学。我的心里对“程序员”这个词有了新的定义,在这种定义下,Don Knuth, Don Woods都是优秀的程序员。只要是有益的创造,就没有必要去在乎是不是科学。
我意识到自己数学还不够强,甚至有些怕,就开始看一些数学方面的书。Concrete Mathemtatics, What is Mathematics?, Science and Hypothesis, Godel Escher Bach, ... 虽然每一本都没有看完,但是我逐渐相信自己的数学能力,发现数学原来如此有趣,并不是做习题那么枯燥,也不像一辈子就拼命证明一个定理那么清高。才发现国内很多数学书用难看的符号把学生吓倒了,其实想通了就是很直观的原理。
我看了电影 A Beautiful Mind 之后深受感动,就去买了一本原著的书,它是数学天才John Nash的传记。它描写了20世纪初的Princeton,一群科学家生活的情景。我眼前浮现出在一个房间里,一群人在喝茶聊天下棋讨论问题激烈争论。我发现我从小内心向往的,就是那样的地方。我看到Nash是如何用“头脑暴力”解决一个他没有任何基础知识的问题。原来只要有了问题和探索的精神,就会有动力去获得解决它所需要的知识,最后将问题解决。发现有用的,重要的问题,而不只是寻找困难的问题,这样才会对人类有价值,才会有动力。我还看到一个数学天才是怎样的喜欢恶作剧,又怎样因为过度的傲慢狂妄,想向世人证明自己的天才而发疯。我发现世界上有远比科学更宝贵的东西。我不是一个天才,但是我要做一个好人。
博士生论坛的时候,同学们都觉得有类似的问题,讨论不足,交流不足。所以我提议成立一个类似国外大学的 Common Room,用来讨论问题。可是大部分老师说:“这样一个房间,天天都要有那么多人在里面待着。谁来出这个钱?” 是啊,老师自己的办公室都要钱,哪里可能有什么 Common Room?就算有了 Common Room,在里面讨论的无非还是文章发到哪里的问题。制度决定了行为,我的设想太理想化了。
paper, paper, 还是paper
说到paper我就痛心。我的方向上我至今还没有看到几篇我觉得像样的文章。我主要进行集成电路布线算法的研究。看起来高深,其实是很简单的问题,一个平面上有一些点是电路里的电极,现在需要用铜线把它们连起来,怎么样让连线的长度或者时延最短?这个问题跟几何上一个有名的问题 Steiner tree 问题有关系。
我的导师就是以前写了一篇这样的paper发到IEEE transactions。我觉得这篇论文还算有一定价值。已经毕业的一个师兄就在他的论文基础上修改来修改去,发了好几篇paper。英文的不够还翻译成中文,投到国内的期刊。后来一个师姐又在这个师兄的基础上进行修改,又发了好多篇。可是在我看来,他们的论文纯粹就是炒冷饭,没有什么创新。很多时候就是加速一下,把NP-Hard问题分解成几个小部分,每一部分用一个别人的精确算法解决,然后再连接起来。这种做法在理论上只需要一句话就说明白了,可是他们却给算法起了很多看似高深的名字用来吓唬人。要是每一个问题经过这样的加速都写一篇文章,那文章就可以成倍增长了!很多问题形式化成一个规划问题就解决了,可是每次形式化一个问题就发一篇paper,而对方法完全没有改进,对于我来说是没有价值的,就像做小学应用题一样。虽然没有创新,还是可以发paper。主要是你怎样把你的 Introduction 写好?可以让别人觉得你的工作有意义?这就是功夫,作家的功夫。我有一次面见INRIA的头目 Jean-Claude Paul 时,他就对我说:“Tsinghua students are all writers, not scientists.”
学校有规定,博士生必须发4篇paper才能毕业,其中必须有一篇是SCI索引,或者两篇EI索引。看上去冠冕堂皇的SCI, EI,不就是跟 google 差不多的东西吗?被它索引了怎么样了?对文章的篇数作要求,而对质量没有判断。投一个SCI太容易了,只是很多人不知道门路。能力一般的人也能很容易的投够论文,然后就可以不思进取的等着毕业。但是不知门路或者被老板(一般研究生对导师的称呼)压迫干活的人就惨了,不知道怎么才能发论文,拖个六七年毕业是常有的。这样的学校又怎么可能有讨论,怎么可能有创造力?SCI=Silly Chinese Index。
Originally posted by xelly at 2005-10-3 05:26 PM:
听说过,虽然教育制度的缺陷是事实,不过每年都有无论如何都读不下去的博士生在,如果这个王垠不是在推托个人的责任就好了。我表哥在读计算机博士,南大的,他说博士学位不是死读书可以拿到的,很讲究是实际上的才 ...