我和权威的故事

我和权威的故事

每个人小时候心里都是没有权威的,就像每个人小时候也都不相信广告一样。可是权威就像广告,它埋伏在你的潜意识里。听一遍不信,听两遍不信,……,直到一千遍的时候,它忽然开始起作用了,而且这作用越来越强。

消灭广告所造成的幻觉,最好的办法就是去尝试,去实地的考察它。有些虚幻的东西只要你第一次尝试就会像肥皂泡一样破灭掉。可是如果你不主动去接触它,它就会一直在你脑海里造成一种美好神圣的假象。越是得不到的越是觉得美好。很神奇的一个现象就是,权威对人思想的作用其实也跟广告一样。

上大学以前的人因为没有专业,所以还不怎么崇拜权威,大不了追追歌星,影星,球星啥的。而进了大学之后,就会开始对本领域的权威耳濡目染。一遍,两遍,一千遍的听到同学们仰慕某“牛人”或者“大师”的名字,虽然从来没亲身见过,不知不觉就对这人产生了崇拜心理,然后自愧不如。Donald Knuth, Dennis Ritchie, Ken Thompson, Rob Pike, … 就是通过这些途径成为了很多计算机学生的权威。以至于几十年以后,他们的一些历史遗留下来的糟糕设计和错误思想还被很多人奉为神圣。

Donald Knuth

很多人(包括我)都曾经对 Knuth 和他的 The Art of Computer Programming (TAOCP) 极度崇拜。在我大学和研究生的时候,有些同学花了不少钱买回精装的 TAOCP 全三卷,说是大概不会看,但要供在书架上,镇场子。当时我本着“书非借不能读也”的原则,再加上搬家的时候书是最费力气的东西,所以坚决不买书。我就从图书馆把 TAOCP 借了来。说实话我哪里看的下去啊?那里面的程序都是用一个叫 MIX 的处理器的汇编语言写的。一个字节只有6位,每位里面可以放一个十进制数(不是二进制)!还没开始写程序呢,就开始讲数学,然后就是几十页的公式推导,证明…… 接着我就睡着了。但我总是听说有人真的看完过 TAOCP,然后就成为了大师。比尔盖茨也宣称:“要是谁看完了 TAOCP,请把简历投给我!” 在这一系列的号召和鼓吹之下,我好几次的把 TAOCP 借回来,下定决心这次一定看完这旷世奇书。每次都是雄心勃勃的开始,可从来就没看完过开头那段 MIX 机器语言和数学公式。

看不懂 TAOCP 总是感觉很失败,因为看不懂 TAOCP 就成不了“大师”,可我仍然认为 Knuth 就是计算机科学的神,总能从他那学点什么吧,所以又开始折腾他的其他作品。这就是为什么我开始用 TeX,并且成为中国 TeX 界的主要“传教士”之一。为了 TeX,我把 Knuth 的 TeXbook 借回来,从头到尾看了两遍,做完所有的习题,包括最难最刁钻的那种“double bend”习题。接着又开始看 MetaFont Book。开头还挺有成就感,可是不多久就发现学会的那些 TeX 技巧到了临场的时候就不知道该怎么用,然后就全都忘记了。这就是为什么我把 TeXbook 看了两遍,可是看完第二遍之后不久还是忘记得一干二净。

师兄师姐看到我用 TeX,说怎么折腾这么过时的玩意儿。我很气愤他们以及国内学术界居然都用 Word 排版论文,就开始针锋相对,写出一系列煽动文章鼓吹 TeX 的种种好处,打击“所见即所得排版”这种低智商玩意儿。这还不够,又开始折腾 Knuth 设计的 MMIX 处理器,并且认为 MMIX 的寄存器环就是世界上最先进的设计。有几次发现一些无关紧要的小错,就给 Knuth 发 email,居然拿到两张传说中的“Knuth 支票”,并且一度引以为豪。当然像所有拿到 Knuth 支票的人一样,你是不会去兑现它的,甚至有人把它们像奖状一样放在相框里。我还没那么疯狂,那两张支票一直在它们原来的信封里。多年以后我到美国想兑现那支票的时候,发现它们已经过期了。

当你心里有了这样的权威,其他人的话你是不可能听得进去的,就算他们其实比你心目中的权威更具智慧也一样。在清华的时候我很喜欢一门叫做“计算几何”的课,就经常跟那门课的老师交流思想。有一次我在 email 里面提到 Donald Knuth 是我的偶像,那位老师很委婉的回复道:“有偶像很好啊,Knuth 也曾经是我的偶像。” 我对“曾经”这两个字感到惊讶:难道这意味着 Knuth 现在不是他的偶像了?在我执意的询问之下他才委婉的告诉我,世界上还有很多很聪明的人,Knuth 并不是计算机科学的一切。你应该多看看其他人的作品,特别是一些数学家的。然后他给了我几个他觉得不错的人的名字。

现在回想起来,这些话对我是有深远作用的。那位老师虽然在系里的“牛人”们眼里是个“研究能力(也就是发paper能力)不强”的人,但是他却对我的人生转折有着强有力的作用。他引导了我去追寻自己真正的兴趣,而不是去追寻虚无的名气。我发现很多人都在为着名气而进行一些自己其实不感兴趣的事情,去做一些别人觉得“牛气”的事情。我真希望他们遇到跟我一样的好老师。

在现在看来,Knuth 的 TAOCP 就是所谓的“神圣的白象”(white elephant)。大家都把它供起来,其实很少有人真的看过,却要显得好像看过一样,并且看得津津有味。这就让试图看懂它的人更加自卑和着急,甚至觉得自己智商有问题。别人都看过了,我怎么就看不懂呢?其实 TAOCP 里面的大部分算法都不是 Knuth 自己设计的,而且他对别人算法的解释经常把简单的问题搞得很复杂。再加上他执意要用汇编语言,又让程序的理解难度加倍。有一句名言说:“跟真正的大师学习,而不是跟他们的徒弟。”如果你真的要学一个算法,就应该直接去读那算法的发明者的论文,而不是转述过来的“二手知识”。二手的知识往往把发明者原来的动机和思路都给去掉了,只留下苍白无味,没有什么启发意义的“最后结果”。

TeX 其实也是异常糟糕的设计。它过度的复杂,很少有人搞得懂怎么配置。经常为了一个简单的效果折腾很久,然后不久就忘了当时怎么做的,回头来又得重新折腾。原因就是因为 TeX 的设计没有“一致性”,不可以“compose”,所以你需要学太多东西,而不是学习几个简单的东西,然后把它们组合起来。在程序语言设计者看来,TeX 的语言是世界上最恶劣的设计之一。Knuth 的作品里面有他的贡献和价值,TeX 的排版算法(而不是语言)也许仍然是不错的东西。可是如果因为这些好东西爱屋及乌,而把他所推崇的那些乱七八糟的设计当成神圣的话,那你自己的设计就逃脱不出同样的思维模式,让简单的事情变得复杂。仍然对 TeX 顶礼膜拜的人应该看一下 TeXmacs,看看它的作者是如何默默无闻的,彻彻底底的超越了 TeX 和 Knuth。

在我看来,Knuth 是个典型的精英主义者,他觉得自己做的都是最好的。他利用自己的权威和特立独行来让用户屈服于自己的设计。TeX 的版本号每次更新都趋近于圆周率π,意思是“完美”,可是它完美吗?更奇怪的是,“TeX”这个词居然不按照正常的英语发音逻辑读成”teks”。每当有人把它“读错”,就有人打心眼里认为你是菜鸟,然后纠正你:“那个词不读 teks,而要读‘特喝’,就像希腊语里的 chi,又像是苏格兰语的 loch,德语的 ach,西班牙语的 j 和俄语的 kh。”也许这就叫做附庸风雅吧,我是纯种的欧洲人!;-) 当一个软件连名字的发音都这么别扭,这么难掌握,那这个软件用起来会怎样?每当你提到 TeX 太不直观,就有人跟你说:“TeX 是所想即所得,比你的所见即所得好多了!”可事实是这样吗?看看 TeXmacs 吧,理解一下什么是“所见即所得+所想即所得”二位一体。

我跟 Knuth 的最后一次“联系”是在我就要离开清华的时候。我从 email 告诉他我觉得中国的研究环境太浮躁了,不是做学问的好地方,想求点建议。结果他回纸信说:“可我为什么看到中国学者做出那么多的杰出研究?计算机科学不是每个人都可以做的。如果你试了这么久还不行,那你可能注定不是干这行的料。”还好,我从来没有相信他的这段话,我下定了决心要证明这是错的。多年的努力还真没有白费,今天我可以放心的说,Knuth 你错了,因为我已经在你引以为豪的多个方面超过了你。

Cornell

可是权威和名气的威力还是很大的。虽然 Knuth 在我心目中的位置不再处于“垄断地位”,世界上可以占据我心里那个位置的人和事物还很多。在离开清华之后我申请了美国的大学。也许是天意也许是巧合,只有两所大学给了我 offer:Cornell 和 Indiana,而我竟然先后到了这两所大学就读。

说实话,Indiana 给了我比 Cornell 更好的 offer。Cornell 给我的是一个 TA 的半工读职位,而 Indiana 给我的是一个不需要工作白拿钱的 fellowship。说实话我从来没有搞明白 Cornell 这样的“牛校”怎么会给我这样的人 offer,GPA 一般,paper 很菜,而 Indiana 却是真正在乎我的。Indiana 的 fellowship 来自 GEB 的作者 Doug Hofstadter。他从 email 了解到我的处境和我渴求真知的愿望之后,毅然决定给我,一个素不相识的人写推荐信。后来我才发现那 fellowship 的资金也是他提供的。

可是 Indiana 和 Hofstadter 的名气哪里能跟 Cornell 的号称 “CS前五” 相比啊?Indiana 的 offer 晚来了几天。当收到 Indiana 的 offer 时,我已经接受了 Cornell。Hofstadter 很惊讶也很失望,因为他以为我一定会做他的学生,可是听说我接受了 Cornell 的 offer,他也不知道该怎么办。我只隐约的记得他告诉我,学校的排名并不是最重要的东西……

名气和权威的力量是如此之大,它让我不去选择真正欣赏我并且能给我真知的人。有时候回想起来,我当时真的是在寻找真知吗?我明白什么叫做真知吗?

Cornell 给了我什么呢?到现在想起来,它给我的东西恐怕只有教训,很多的教训。我在一篇老的博文里面提到过,Cornell 的学生一上课就抄笔记,一天到晚都在赶作业。可其实 Cornell 不只是爱抄笔记的学生的天堂,而且是崇拜权威者的天堂。即使你不是那么的崇拜权威,你不可避免的会被一群像朝圣者一样的人围在中间,在你耳边谈论某某人多么多么的牛。不管你向同学打听哪一个教授,得到的回答总是:“哇,他很牛的!” 然后你就去上了他的几节课,觉得不咋的嘛,可是人家就说那是因为你不理解他的价值。这种气氛我好像在另一个地方感觉到过呢?啊对了,那是在 Google。这样的气氛也许并不是偶然,Cornell 的大部分 PhD 同学当时的最大愿望,就是毕业后能去 Google 工作。当然,后来 Facebook 上升成为了他们的首选。值得一提的是,Indiana 其实是更有个性的地方。我在 Indiana 的同学们一般都把去 Google 工作作为最后的选择之一。有一次一个刚来不久的学生问,如何才能进入 Google 工作?有个老教授说,那个容易,Google 招收任何能做出他们题目的人!

Cornell 的研究可以用“与时俱进”来形容,什么热门搞什么。当时 Facebook 和社交网络正在崛起,所以系里最热门的一个教授就是研究社交网络的。我去听过他几堂课,他用最容易的一些图论算法分析一些社交网络数据,然后得出一些“理论”。其中好些结论实在太显然了,我觉得根本不需要数据就能猜到,真是不觉得有什么特别的。可是 Facebook 名气之大,跟着这位教授必然有出路啦,再加上有人在耳边煽风点火,所以有好多的学生为做他的 PhD 挤破了头皮,被刷下来的就只好另投门路了。每次新来一个教授都会被吹捧上天,说是多么多么的聪明,甚至称为天才。然后就有一群的人去上他的课,试图做他的学生。结果人家每节课都是背对学生面朝黑板,喃喃自语,写下一堆堆的公式和证明,一堂课总共就没回过几次头。下面的人当然就是狂抄笔记,有的人甚至带着录音笔,生怕漏掉一句话。上这样的课还不如干脆把板书打印出来让大家自己回家看。人多了竞争也就难免了。上课的同学们就开始勾心斗角,三国演义的战术都拿出来了。作业做不出来就来找你讨论,等你想讨论了就说自己也没做出来。没听懂偏要故作点头状,显得听懂了,让你觉得有压力。自己越是喜欢的教授就越是说他不咋的,扯淡,然后就自己去跟他。自己不喜欢的教授就告诉你他真是厉害啊,只可惜人家不要我。直到两年后我离开 Cornell 之前,还有好些同学因为没找到教授而焦头烂额。因为两年内没有找到导师的 PhD 学生,基本上等于必须退学。

当我离开 Cornell 之后,有一位国内的学生给我发 email 套磁(从系里主页上找到我的地址),问我 Cornell 情况如何。我告诉他我都已经走人了,并且告诉了他我的感觉,一天到晚抄笔记赶作业之类的。然后又问我一个刚毕业的 PhD 的情况,我说他水平不咋的,博士论文我看过了,很扯淡,解决一个根本不存在的问题。他对我说的话有点惊讶,但还是将信将疑。为了确保万无一失,他在 visiting day 的时候专程去 Cornell 考察了一下。回去又给我 email,说见到好多牛人啊,大开眼界,哪里像你说的那么不堪。还说跟那位 PhD 的导师谈过话,真是世界级的牛人那,他的博士论文也是世界一流的。我就无话可说了,仁者见仁,智者见智,随他去吧,哎。

结果两年之后,我又收到这位同学的 email,说他在 Cornell 还没找到导师,走投无路了,问我有没有办法转学。

图灵奖

说到这里应该有人会问这个问题,我是不是也属于那种没找到导师走投无路的人。答案是,对的,我确实没有在 Cornell 找到可以做我导师的人。然后我就猜到有人会说,就知道王垠水平不行嘛,没搞定导师,被迫退学,哈哈!可是事情其实没他们想象的那么简单。作为一个 PhD 学生,不仅必须精通学术,而且要懂得政治和行情。哦错了,其实不精通学术也行的,但是一定要懂得政治和行情!可是由于学生之间的窝里斗,他们之间的信息互通程度,是没法和教授之间的信息互通程度相比的。这就造成了“学生阶级”在这场信息战上的劣势,总是被动的被教授挑选,而不能有效地挑选适合自己的教授。

进入 Cornell 之后我上了一门程序语言的课,就开始对这些东西入迷。可是由于“与时俱进”,Cornell 的研究方向并不是那么平衡的发展的,其实是很畸形的发展。程序语言领域的专家们早已因为受到忽视而转移阵地,剩下一群用纸和笔做扯淡理论的。说实话,在历史上程序语言方向曾经是 Cornell 的强项,出现了一些很厉害的成果。可是当我在 Cornell 的时候,只剩下两个名不见经传的教员,一个助理教授,一个副教授。其实 Robert Constable 也在那里,可惜的是他做了 dean 之后已经没空理学生了,以至于我两年之后都不知道这个人的存在。我当时也不知道 Cornell 有过这段历史,看不到它的研究重心的移动趋势。

我不喜欢那个副教授搞的项目,大部分是在 Java 上面加上一些函数式语言早就有的功能。可是人家做的是热门语言,所以拉得到资金,备受系里亲睐,他的学生们也比较趾高气昂。初次见面的时候,我跟他的一个学生说了我的一个想法,他说:“你那也能叫研究吗?待会儿我给你看看什么是真正的研究!” 其实那只是我的一个微不足道的想法,我也没说那是研究啊。只是随便聊一下而已就这么激动 -_- 何况你们那些 Java 的东西能算是研究?我是不可能跟那样的人合作的,所以我就跟那个助理教授做了一点静态分析的项目。当然我们分析的也不是什么好东西,是用 Fortran 写的 MPI 程序。不过说实话,那个助理教授其实挺有点真知灼见,他有几句话现在仍然在指引我,防止我误入歧途。其中一句话是针对我对 π-calculus 的盲目崇拜 说的:“那些理论其实不管用的。最好是针对自己的问题,自己动脑筋想。” 他也是很谦虚很善良的人,可是好人不一定有好报的。后来他没有拿到 tenure 职位,不得不离开 Cornell 加入了工业界,而我就失去了最后一个有可能在程序语言方向做我的导师的人。

没办法,我就开始探索其它相关领域的教授,比如做数据库的,做系统的,看他们对相关的语言设计是否感兴趣。可惜他们都不感兴趣,而且告诉我程序语言领域太狭窄了。我当时还将信将疑,甚至附和他们的说法,可是现在我断定他们都是一知半解胡说八道。如果这些人虚心向程序语言专家请教,现在数据库和操作系统的设计也不会那么垃圾,关系式,SQL,NoSQL,…… 一个比一个扯淡。没有办法,我就开始探索其他的方向,开始了解图形学和数值分析等东西,进展很不错。可是终究我还是发现,我不喜欢图形学和数值分析所用的语言。我想制造出更好的程序语言来解决这些问题。可是跟教授们谈这些想法的时候就感觉是在对牛弹琴,他们完全不能理解。后来我发现,教授们貌似不喜欢有自己想法的学生,他们更希望找到愿意“打下手”的学生,帮助实现他们自己的想法。

这就让我走到了跟那位向我打听 Cornell 情况的同学差不多的局面,真是心里有许多的苦却没有人可以理解。这时候我想到了系里的一些德高望重的教授,比如得过图灵奖的人,也许这些顶级的大牛会给我指出方向。于是我就联系到一位图灵奖得主,说想找他聊聊。我说我感兴趣的东西 Cornell 貌似并不重视和发展。Cornell 的校训是“any person, any study”,而我想 study 的东西却得不到支持。最后我谈了一下我对 Cornell 的总体感受。我说我觉得大家上课死记硬背,不是很 intellectual,我不是很确定学术界是否还保留有它原来的对智慧和真知的向往。

我真的是很诚恳的告诉了他这些,只是希望得到一些建议。结果他不但没有理解任何一点,而且立马开始用质问的语气问我,你成绩怎么样?考试都通过了没有?哎,说白了就是想搞清楚你是不是成绩不好没人要。怎么就跟高中教导主任一样。于是乎那次谈话就这样不了了之。可是没有想到,这次谈话就造成了我最后的离别。在学生们互相之间勾心斗角,不通信息的同时,系里的教授们其实背后都是“通气”的。他们根本不懂得如何教学,就知道拿作业和考试往学生头上砸,幸存下来的就各自挑去做徒弟,挨不住的就打发掉。这算盘打得真是妙啊。我也不知道他们是什么机制,每个学生对哪些教授感兴趣,表现如何,他们貌似都了如指掌,貌似背后有个什么情报网。然后系里的教授们不知道怎么的,仿佛就都知道有这样一个不知趣的学生,居然敢说学术界的坏话!

大地震前夕的天空总是异常的美。我竟然在过道里看到那位图灵奖教授对我点头致意并且微笑,以前做 TA 时把我呼来唤去还横竖不满意的教授也对我笑脸相迎。我仿佛觉得,我推心置腹的一席话打动了那位德高望重的教授,再加上在图形学和数值计算的扎实进展,给我的学术生涯带来了转机。可是,我那一次真正的领悟了什么叫做所谓的“笑里藏刀”。

由于那个学期上的图形学还有矩阵计算的课成绩都不错,我心想应该能找这两门课的授课教授的其中一个做导师吧。再加上那些貌似友好的笑容…… 所以没想很多,居然过了一个非常快乐的寒假。没有任何前兆,没有任何直接的通知(email,电话),一封纸信不知道是什么时候默默地进到了我在系里的“信箱”—一个我基本上从来不看的,系里用来塞广告信息的信夹子里,直到下一个学期开始的时候(2月份)我才发现。信是系主任写的,大概就是说,由于你的表现,我们觉得 Cornell 不是适合你的地方……

说得对,我也觉得 Cornell 不适合我。我本来就有想走的意思,可我一般呆在一个地方就懒得动。如果你们早一点告诉我这个,比如12月以前,我还可以申请转学到其它学校。可是都 2 月份了才收到这样的东西,Cornell 啊 Cornell,你让我现在怎么办?我想我可以说你不仁不义吧?

在这个万分窘迫的时候,我想起了曾经关心过我却又很失望的 Hofstadter。我告诉他我在 Cornell 很不开心,我很想研究程序语言,可是 Cornell 不理解也不在乎这个领域。他回信说,没有关系,你能找到自己喜欢的东西就应该去追寻它。Indiana 的 Dan Friedman 正好是做程序语言的,你可以联系他,就说是我介绍你去的。

于是给 Friedman 发了 email,很快得到了回信说:“Yin,两年前我们都看过你的材料,我们觉得你是非常出众的学生,可惜你最后没有选择我们。你要明白,人生最重要的事情不是名利,而是找到你愿意合作的人。你的材料都还在我们这里。现在招生已经快结束了,但是我会把你的材料提交给招生委员会,让他们破例再次考虑你的申请。” 我和 Dan Friedman 的故事就从这里开始了。

由于曾经与多位图灵奖得主发生不大愉快的遭遇,再加上在自己的研究中多次受到其它图灵奖得主的理论的误导,图灵奖这个被许多计算机学生膜拜的神物,其实在我心里已经没有任何效力了。很多人可能对此难以想象,可是对图灵奖是这种态度的不只我一个人。我认识的几乎所有程序语言专家几乎都不拿图灵奖当回事,而且其中很多人甚至不拿图灵本人当回事,觉得他设计了一些非常丑陋的东西。所以跟这样的人混了几年之后,拿图灵奖来开玩笑就成了我的家常便饭。可惜的是很多仍然膜拜图灵奖的人不能理解,还以为我是自大狂。

常青藤联盟和“世界一流大学”

我在 Cornell 的经历应该不是偶然,不是因为我比较特殊。跟我同时进入 Cornell 的博士生有好几个没有拿学位就离开了。其中有一个是非常聪明的少年班,18岁就读 PhD 了,我根本听不懂的理论课他还能拿A。可是四年后他退学去了 Facebook,说真是太难毕业了,神马都是扯淡。有些本科生也告诉我类似的经历,说被一个叫做“笑面虎”的教授“整了”。Cornell 的自杀率居美国大学前列。离开以后的有一天,忽然看到新闻报道说一周之类有三个 Cornell 学生从瀑布旁边的那座桥跳下去,结果派了警察在桥上日夜巡逻。我觉得自己在 Cornell 所感受到的压力确实超乎想象,是有可能把人逼上绝路的。现在回想起来真是可笑,因为下意识里在乎权威和名气,我给予了一群根本没有资格来教育我的人莫大的权力,让他们可以向我施加无端的压力。

应该指出,这种现象应该不是 Cornell 所特有的。我对清华,还有 Princeton,Harvard,MIT,Stanford,Berkeley,CMU 等学校的学生都有了解。这些所谓的“世界一流大学”或者“世界一流大学 wannabee”差不多都是类似的气氛。你冲着它们的名气和“关系网”挤破了头皮进去,然后就每天有人在你耳边对其它人感叹:哇,他好牛啊!发了好多 paper,还得了XX奖。跟参加传销大会似的,让你怀疑这些人还有没有自尊。然后就是填鸭式的教育,无止境的作业和考试,让你感觉他们不是在“教育”你,而是在“筛选”你。这种筛选总是筛掉最差的,但也筛掉最好的。因为最好的学生能意识到你在干什么,他们不给你筛选他们的机会。一旦发现其实没学到东西,中途就辍学出去创业了。所以剩下来的就是最一般的,循规蹈矩听话的。在这样的环境里,你感觉不到真正的智慧和真知的存在。GRE 考试所鼓吹的什么“批判性思维”(critical thinking )在美国大学里其实是相当缺乏的。学生们只不过是在被培训成为某些其他人的工具,他们具有固定的思维定势,像是一个模子倒出来的。他们不是真正的创造者和开拓者。

人们在这些大学里的时候都是差不多感受的,可是一旦他们出来了,就会对此绝口不提。自己身上挂着这些学校的镀金牌子,怎么能砸了自己的品牌,长别人的威风?所以每当我批判 Cornell 就有些以前的同学一脸的着急相,好像自己没有吃过那苦头一样。

再见了,权威们

亲爱的同胞们,如果你们觉得有了可以在背后说王垠“被Cornell 退学”的机会,那么你们就错了。是我首先从心理上抛弃了 Cornell。Cornell 还有资格来评价我吗?我之所以可以告诉你们这些貌似不可告人的故事,是因为你们可能也会经历这些事情。对权威和名校的崇拜,让你们成为了被“教授阶级”摆布的傀儡和他们在学术战场上的牺牲品。我很幸运的遇到了像 Hofstadter 和 Friedman 这样的好人,而你们也许就没有这么幸运。

几经颠簸的求学生涯,让我获得了异常强大的力量。我的力量不仅来自于 Friedman,Dybvig 等老师的教诲,而且在于我自己不懈的追求。机会只亲睐有准备的头脑,并不是每个 Friedman 的学生都可以像我一样在一个星期之内解决别人十多年才完成的研究。现在这种事情对我来说已经是家常便饭了。让人惊讶的应该不是我有多么聪明,而是这些研究者们十年来到底在干什么。我从来不认为自己比别人聪明,我只是觉得很多人的脑子被禁锢了而已。我有非常简单的头脑,我看不懂复杂的公式,听不懂高深的术语。可正是因为这一点,让我脱离了已有理论的困扰。

可以说,这个领域在过去一个多世纪的研究,很少有逃脱过我的洞察力和直觉的。这些研究最早可以追溯到1870年代。我一般很少看论文,因为自己想清楚一个问题其实花不了那么多时间的。看别人的论文一般都枯燥乏味,所以与其花那么多时间读论文还不如自己思考。当我看论文的时候,一般是想搞清楚自己琢磨出来的问题有没有人已经研究过了,所以很多论文只需要扫一下就够了。我看到一个东西一般很快就会知道它到底会不会管用。我经常发现一些被认为很艰深的理论其实是在解决根本不存在的问题,甚至是在制造问题,而真正的问题却没有得到有效的解决。很多问题其实是权威的阴影造成的,它让人们不敢否认这些大牛思想的价值,不敢揭穿它们,抛弃它们,所以很多的时间花在了解决一些历史遗留问题,而不是真正的问题。这就是为什么我的英文blog标题叫做“Surely I Am Joking”,因为它记录了一些我认为根本不存在,或者是人为造成的问题。

曾经 Knuth 是我心中唯一的权威。后来我又屈服于 Cornell 和常青藤联盟的权威和名气。我因为图灵的威名而误以为图灵奖得主都是德高望重的前辈。应该说,在 Indiana 的日子里,权威主义的影子也是经常出现的。Indiana 学生们的权威比较特殊一点,不然就是 Dan Friedman,不然就是 Kent Dybvig,不然就是 Tony Hoare 之类的。所以你有时就会发现有人想这样来压倒你:“Kent 说……” 我很尊敬 Dan 和 Kent,但我也看到他们的一些思维方式并不是那么的正确,我从来不引用他们的话作为理论依据。我不喜欢 Indiana 一些同学这种抬出权威来镇压异议的行为。应该指出的是,权威们自己很多时候对这种行为的产生是不知情的。谁能防止你引用我的话去压倒跟你辩论的人呢?所以这很多时候不能归咎于权威自己,而应该归咎于那些盲目崇拜他们的人。对权威的崇拜其实现实了一个人心理的弱小。如果你对自己有信心,有自己的想法和判断力,又何必抬出个名人来压制别人呢?

在一而再再而三的上当受骗之后,我终于把所有的权威们从我的脑子里轰了下去。这些权威包括所有大学的所有教授,所有的图灵奖得主,Unix 和类似操作系统的设计者,所有的程序语言设计者,图灵,他的导师邱奇,他的师兄 Kleene,被程序语言研究者奉为神圣的逻辑学家们比如 Per Martin Lof,各大 IT 界“牛公司”,美国国防部,美国宇航局,…… 在我的心中,他们与我完全处于平起平坐的地位。所以如果你觉得你的超级偶像在我之上的话,请先问问我对他们的博士论文或者图灵奖作品有何评价 🙂

不再是我心目中的权威并不等于我鄙视他们或者不尊敬他们。他们在我的脑子里失去的只是他们在很多其他人脑子里的那种被膜拜的地位,那种你可以用“XX人说过……”来压倒理性分析的地位。现在他们在我心目中是一群普通的,有血有肉,有好心肠或者坏心眼的,高傲,谦虚或者虚伪的人。他们设计的东西,好的地方我可以借鉴,但是没有任何人的东西我是不加批判全盘接受的。我深深地知道接受错误想法的危害性,所以我也希望大家都具有批判的思维,不要盲目的接受我说的话。我不喜欢“大神”或者“牛人”这种称呼。

最后我希望国内的同学们,不要盲目的崇拜国外的所谓“大师”,“牛校”或者“牛公司”。祝你们早日消灭掉心里的各种权威以及对他们的畏惧心理,认识到自己和自己国家的价值和力量。

新年快乐!

原文  http://www.yinwang.org/blog-cn/2014/01/04/authority/

趣文:如果老婆和女朋友她们是程序

去年,我的一位朋友和他的 GirlFriend 6.0 升级到 Wife 1.0 (也就是他们步入婚姻殿堂了)。婚后他发现,结婚就是只留给其他应用少量系统资源,自己却狂占内存的进程。老婆还要生成子进程(Child Processes),子进程会在将来消耗更多的资源。虽然产品说明书或手册里没有提及这种现象,但大家都知道这些都源于自然规律。

不只如此, Wife 1.0 在安装时设置了开机启动,监测所有系统活动。朋友发现许多应用,比如,扑克之夜、啤酒狂欢、午夜酒吧 已经无法在系统上运行了,每次运行,系统就会崩溃。

Wife 1.0 安装时并未给出提示,婚后却多了岳父岳母两个插件,系统性能看起来一天不如一天。

 

朋友希望 Wife 2.0 版拥有如下新特性:

  • “不再提醒我”按钮;
  • “最小化”按钮;
  • 安装时增加新选项, Wife 2.0 可以在任意时间卸载,并且不会造成缓存和系统资源损失;
  • 允许网络驱动使用混乱模式,以便系统硬件探测更多有用的功能。

我本人决定继续使用 GirlFriend 7.0 ,避免 Wife 1.0 带来的麻烦,即使如此,我依然麻烦重重。很显然, GirlFriend 7.0 不能安装在 GirlFriend 6.0 上面,必须先卸载 GirlFriend 6.0。这是一个众所周知的bug,已经存在很长时间。很显然,上一版本的女朋友在 I/O 端口共享的问题上有冲突。我还以为她们已经修复好了这个愚蠢的bug。更糟糕的是,GirlFriend 6.0 卸载时在系统中留下很多不良记录。还有,所有版本的女朋友都会不断弹出烦人的提示,提醒我升级成 Wife 1.0 的好处。

Wife 1.0 有一个没有记录在案的 bug。在 Wife 1.0 卸载之前,如果你试图安装 Mistress 1.1(情人 1.1) , Wife 1.0 会在卸载之前删除所有财富文件,然后 Lover 1.1 就会因没有足够的系统资源而安装失败。

为了避免此种 bug,就要把 Mistress 1.1 安装在另外一个系统里,并且不要使用例如 Laplink 6.0 这样的通讯软件。同时要小心那些已知携带病毒感会感染 Wife 1.0 的相似共享软件。另外一个解决办法是匿名,通过 UseNet 提供的网络运行 Mistress 1.1,再次提醒,小心那些能从 UseNet 下载东西的病毒。

 

技术支持的建议:

男同胞抱怨的很多常见问题,大多是源于误解。很多人把 GirlFriend 6.0 升级为 Wife 1.0 ,是因为 Wife 1.0 是最主要的实用工具和娱乐程序。实际上, Wife 1.0 操作系统被原作者设计为可以做任何事情。

从 Wife 1.0 退回 GirlFriend 6.0 是不太可能的,系统内的隐藏文件会使 GirlFriend 6.0 模仿 Wife 1.0,所以一切都是徒劳。一旦安装,就不可能从系统内卸载、删除、粉碎程序。从最初的设计上就屏蔽掉此功能。

一些人安装了 GirlFriend 7.0 或者 Wife 2.0 ,但问题比最初系统还糟糕。看看手册里的 “生活费/子女赡养费“ 警告,我建议你在 Wife 1.0下处理问题。我建议你安装后台应用程序“c:\遵命亲爱的“ 以减缓软件增大。

本人在安装完 Wife 1.0 后,建议你认真阅读“常见关系故障”章节(General Partnership Faults – GPF)。你必须为所有可能发生的过失和问题承担责任,不管其原因。最有用的是在命令行里输入 c:\我道歉。

要避免滥用“c:\遵命亲爱的“,因为有可能在系统恢复正常之前,你还得用 “c:\我道歉“ 命令。只有把所有责任都揽在自己身上,系统才能平稳运转。

Wife 1.0 是一个很棒的程序, 但是维护成本很高。为提高 Wife 1.0的性能,再买些辅助软件吧。我推荐 “鲜花 3.1”和“钻石2K“。千万不要安装”短裙秘书 3.3“,它不支持 Wife 1.0,而且会造成操作系统不可挽回的损失。

祝君好运!

技术支持部

原文链接: funny2   翻译: 伯乐在线 马超
译文链接: http://blog.jobbole.com/53403/

你是一个努力工作的程序员吗?还是一个懒惰的程序员?

懒惰的程序员

你是一个努力工作的程序员吗?还是一个懒惰的程序员?

      当一个人在完成一件体力工作时,你很容易评估他是否在努力的工作。你可以观察他的物理动作,看他流了多少汗水。你还可以看到他工作的成功:砖墙在砌高,地面上挖的坑在变大。对努力工作的认可和褒奖是人性中非常基本的本能反应。这也正是为什么人们对体力耐力体育活动如此着迷的原因之一。这种对体力上的辛苦工作的本能的赏识,在遇到管理一群技术创造型的员工时,却成了一个麻烦问题。高效的脑力工作者通常会被看作并没有在努力的工作。

    早在2004年,我还是一个初级程序员,工作在一家有线电视公司,在一个大型团队中开发财务和供销系统。跟所有的大型系统一样,这个系统由很多的相对独立的模块组成,分别由一些个人或小团队负责。其中模拟电视和数字电视的财务和供销系统几乎完全独立,分别由两个团队开发。

    模拟电视开发组决定在早期的微软Biztalk平台上开发他们的系统。由这个公司的4个小伙和微软的一个团队共同开发,并负责产品环境的运行。他们看起来真的工作的十分辛苦和努力。你经常能看到他们加班到深夜或周末加班。每个人都会随时放下手中的活儿来解决正式环境中突现的问题,经常会在一张桌子前一群人围绕着一个小伙,各自说出自己的见解,讨论什么地方错了,应该如何修正。工作气氛永远是热火朝天,每个人都能看到这些——即使只是经过瞟一眼,不仅仅从整个团队讲,而是他们每个人都真的真的工作的很努力。

    数字电视供销系统开发团队却是完全的不同。代码几乎是由一个家伙写的,我们就叫他大卫吧。我是一个初级程序员,在团队里做维护工作。起初我在理解他的代码时遇到了很大的麻烦。他的代码里没有很长的过程,通常我的代码会把很多操作放到一起,相反,他的代码里有大量的很小的类文件和只有几行代码的小方法。好几个同事都抱怨大卫把代码搞的过度复杂了。但大卫耐心教导我,建议我去读几本面向对象编程的书籍。他给我讲设计模式,SOLID编程原则,单元测试等知识。很快,我对他的代码开始有了理解,我越研究他的代码,越欣赏这些程序中优雅的设计。这些代码放到产品环境中非常好用,运行稳定的干着它们的工作。这些代码修改起来也相当简单,因此,一些新功能的增加变得轻松容易。单元测试保证了大部分的bug都阻挡到了正式环境之外。

    这些做法产生的结果就是,我们看起来完全不是在十分努力的工作。我们5点半准时下班,周末从来没有加过班,我们从来没有发生过一大群人围绕着一个人数小时的讨论正式环境中的错误是怎么发生的场景。在外人看来,我们肯定是被分配了一件相对容易的任务。但事实上,需求都是十分相似的,我们只是更好的设计和实现了这个系统,有更好的支持系统基础架构,特别是单元测试。

    管理部门宣称他们要根据员工的工作表现涨薪。当轮到老板跟我谈话时,老板说只给那些工作真的努力的员工涨工资才显的公平。而我们的团队看起来对公司发展的好坏并不太在意——跟那些放弃了自己的晚上和周末的英雄们相比。

    这家公司是一个稀有的实验室,你可以将好的软件设计和坏的软件设计、好的团队特征和不好的团队特征的影响效果做一个直接的对比观察。大多数的公司里不可能提供这种比较的机会。你很难说这些挥汗如雨、工作到深夜和周末、坚持冲在灭火第一线的小伙们是为了开发一个真的非常非常复杂的系统而展示了伟大的付出,还是就是一次失败。除非你有能力提供两个团队来竞争,让他们解决同样的问题,可是哪个公司愿意做这样的事情呢。相反,如何看待那些坐在角落里,朝九晚五,看着像是整天上网读什么东西的程序员呢?是他们善于写出强健稳定的代码吗?还是分配的活儿比其他人容易?在常人的眼里,前一个团队的小伙们是在努力的工作,而第二个不是。努力工作值得赞扬,懒惰可耻,不是吗?

    我敢断言,表面上看起来工作很努力通常会是一种失败的信号。在高压下,在一个不断被打搅的环境中,软件开发通常是不能干好的。长时间的工作往往不是一个好的方式。有时解决一个难题的最好的方法是停止思考,出去散散步,或更好的,去睡一个好觉,让潜意识帮你解决。我最喜欢的一本书就是20世纪英国数学界领军人物G. H. Hardy先生写的《A Mathematician’s Apology》。在这本书里,Hardy先生描述他的日常规律:上午4小时的工作,下午看板球比赛。他说一天超过四小时的高强度脑力劳动都是无意义的,也是无效率的。

    对于那些管理者们,我想说的是,判断一个人要看结果,要看开发出的软件的好用与否,而不是看他们表现的是如何在努力的工作。很反直觉吧,你其实最好不要坐在这些程序员中间,这样能保证你不受传统的、本能上的评判指标的影响,这样你才能对他们的产出有更好的认识。远程工作是特别有效的一种做法,你只能通常他们的产出来评判他们,而不是省事的观察他们是否8小时都坐在办公桌前对着IDE噼里啪啦的敲着键盘或“热心的”围聚在另外一个人的桌前提供着“有效的”建议。

励志故事:要么孤独,要么庸俗

心理导读:就像叔本华所说的,“要么是孤独,要么就是庸俗”。我不会去想别人的、世俗的感受,我只追求内心的、精神的满足。这就是26岁的我所想的。

 

1987年出生,我今年刚好26岁。

工作已经五年,在社会这个酱缸里混了五年,在这个肖申克监狱里待了五年。

26岁,终于鼓起勇气,拿起石头,伴着雷声,在监狱的地下水管上砸出了一个洞。

就在大前天凌晨,终于收到了一封让我望穿秋水的邮件。凌晨四点听到了手机的邮件推送铃声,打开邮箱,颤抖着双手哆哆嗦嗦的登陆网申系统,竟然是一封佐治亚理工学院的博士生录取通知。三年多来的努力,在连收六封拒信之后,终于有了结果。那一刻,我明白了杜甫的“却看妻子愁何在,漫卷诗书喜欲狂。白日放歌须纵酒,青春作伴好还乡。”

从小到大的20多年里,我几乎一直在循规蹈矩。别人上学我也上学,别人高考我也高考,别人上大学我也上大学,别人工作我也工作。种种原因,三年前我萌生了出去读书的念头。这是我第一次自己决定自己走什么样的路。这种感觉是如此的强烈,以至于我觉得我都有点理解佛教故事里的“弘誓大愿”是什么意思了。

这一路上的艰辛,说出来估计会很矫情。每个人都知道自己的道路有多么艰难,但既然决定了,就应该走下去。就像老罗从前教GRE的时候说的,“失败只有一种,那就是半途而废”。从那以后,我开始了上班画图,空闲时间学习的漫漫征程。三年的时间,做了几十个设计项目、考了GRE、考了托福、考了一级注册结构工程师专业考试、完成了研究生申请流程。这时候我才明白,从前的自己是多么的不努力,如果从18岁开始就这样努力,何至于会有今天?

但过去的终归已经过去,再也无法改变。王小波老师说,“人的一切痛苦,本质上都是对自己的无能的愤怒”。我也正是如此,却也只能“休恋逝水、苦海回身、早悟兰因”。过去的都已经无法改变。我只能尽力去改变那些我能改变的未来。

本科成绩低、无实验室经历、无科研经历、无发表论文、无海外交流经历,这些是我的过去。托福三项满分,总分114,GRE数学满分,总分326,中国最年轻的一级注册结构,佐治亚理工的博士生录取,这些是我的现在。我的未来,还在路的前面。

当然,很多事不能强求,我也不认同很多励志故事里舍家撇业、和男友/女友分手的桥段。对我来说,爱情和家庭是最重要的,也是我做所有这些事情的动力。我绝对不会本末倒置。不能说做的很好,但至少没有不放在心上。从高中时候的初恋,一直走到今天的婚姻,成为彼此的精神伴侣,我觉得这是我最大的成就,甚至比留学申请成功还要好。

很多人不理解我,为什么要出去读书?有一注证书,有接近五年的甲级院工作经验,不错的工作还是有很多的。可是,我不想要一眼看到头的生活。就像毛姆老师在《刀锋》里借主人公之口说出的,“你知道,我有个看法,觉得我这一生还可以多做点事,不能够光卖股票”。我也觉得,我这一生可以做很多事情,我可以去看看这个世界,可以去“晃膀子”。

26岁的前几个月几乎是我至今为止最难熬的一段时间。隔三差五的拒信,让我心都快凉了。老婆要开始申博士后了,我这边还没结果,她到底申那些学校?我要是没结果要不要先去陪读?去了再申把握大不大?这些问题闷在心里,几乎让我精神崩溃。幸运的是,我终于收到了录取,那些心血终于没有白费。肖申克监狱的水管已经砸开,但前面不是光明,而是更黑暗的下水道。安迪·杜弗雷,爬过了这段恶臭无比的下水道,终于在漫天大雨中重见光明。对于我而言,前面的道路可能更加艰难。但我要做的,就是哪怕再难也要坚持下去。照顾好我的家庭,珍惜这次机会,完成漫长的博士生征程,真正做到学有所成。

我总是觉得孤独,当我看到留学论坛里好些人在兴奋的讨论国开行、建设部之类去哪些哪些大学招人的时候,我就觉得异常的孤独。但就像叔本华所说的,“要么是孤独,要么就是庸俗”。我不会去想别人的、世俗的感受,我只追求内心的、精神的满足。这就是26岁的我所想的。

就像毛姆写的,“也许不太实际,另一方面也许很实际。总之非常之有趣。你决计想象不到读《奥德修纪》的原文时多么令人兴奋。仿佛你只要踮起脚伸出手来,天上的星星就能碰到似的”。

我也要去摸星星,哪怕去的路上荆棘满地

文/猪小宝   

10 个理由让你继续干 IT

1.钱,钱,钱

对,我们努力工作就是为了赚钱,而IT专业人士的努力工作的确得到了很好的补偿。报酬不仅仅是好而已,而是非常棒。根据美国劳工部《2010年美国 就业与报酬情况概览》(表6,PDF)的统计数据 ,在所有的职业群体当中,计算机和数学2010年的排行并列第三,年均工资为77230美元。只有管理和法律的报酬比IT高。

2.专业

如果你跟我一样,跟谁在一起工作是件非常重要的事情。毕竟,在你生命里将会有超过四分之一的时间要跟他们在一起。我跟专业的人和不那么专业的人都共 事过。我倾向于接触前者、回避后者。我也在别的职业领域遇到过专业人士,如果要我列举说明的话,比如说国防工业,但是IT的专业人士依旧排行前列。

3.职业连续性

我第二次离开IT的时候,就只想着休息,什么事都不做。然后我发现(太迟了)离开自己的职业后想要返回会更加困难。最大的问题是潜在的老板会怎么看 你。老板不希望看到你的履历中出现断层。这种不幸的机会可能会被你撞上,那就是你会发现对失业的歧视的真实性存在会给你带来一条艰困之道。

4.挑战

我现则写计算机程序的其中一个理由是我发现它充满挑战。在编写代码的时候,前进的道路上没有一天是不会遇到至少一个障碍的。IT专业人士在解决困惑 和问题中成长。有了正确的态度(这对于在IT上取得成功是必不可少的),障碍就会变成挑战。信息技术是充满挑战,但是你却不会感到厌烦。无论你在IT里面 的角色怎样,你明天所遇到的挑战很可能就会跟今天所经历的不一样。

5.回报

当你遇到挑战的时候是有回报的——这是选择并留在这个行当的另一个理由。当自己写的程序按照设计运行,没有错误出现的时候,或者是当一个长期的系统 项目成功地按时完成的时候,我的职业满意度就会前所未有地高。好吧,也许你对拯救生命并没有什么帮助。但是,如果实在为医疗人员提供支持的话,那么你就是 在拯救生命。同时你也在拯救蓝领和白领工人,拯救他们于单调乏味的、可由、也应该由机器完成的任务之中。喜欢做繁重工作的人寥寥无几。我职业生涯中建设的 系统替代了若干的无意义工作。坦率地说, 除了少数几段艰难时期,意识到我正在帮助别人把工作做得更好之后,我工作结束的时候都是满意地离开的。无论你在IT的众所担当的角色是什么,帮助别人并出 色完成工作都会令人产生自尊感和成就感,这都是很高的回报。 正如TR的成员Chronological所说的那样,“有史以来最具挑战性的工作?也许是。最有内涵的工作?——100%确定。”

6.畅销

IT职业人员找工作保工作的机会要好得多。IT专业人士的前途一片光明——至少在美国是这样的。前20佳职业中有5个是IT岗位,前50大薪水最高且最具增长潜力的的职业里面有14个也是IT岗位,这是CNN金钱与薪资表的调查结果。

7.技能

那些想干IT的人通常都是相当聪明的,都具有独特的品质和技能。 IT吸引了分析型人士并让世界发生技术性倾斜。如果你具备这些品质和技能,你就能在IT找到一个家。 另一个留在IT的好理由是让你的技能与时俱进。离开IT太久的话的你的技能就会过时或者甚至被淘汰。在你离开IT之前,想想吧,是你的老板出钱让你学习新技能并保持已有技能跟得上形势。那些技能是对你未来的投资。

8.尊重

Jack在他的文章中提到,IT专业人士得不到大众的尊重。我从在论坛的反馈中得知你们当中有许多人都同意这一点,并感觉到自己没有得到威望以及渴望中的尊重。如果你自己的工作干得很出色却感到缺乏尊重,也许其原因要归咎于旁观者地无知,而非你自己的过失。 公众也许是块硬骨头,但是你可以在你的同事那里获得尊重。富于知识和智慧的专业人士重视他人的贡献,并会表明其对同事的尊重。IT是赢得尊重的好地方。如果你不能够在IT这个领域赢得尊重,那么很有可能在别的任何地方也得不到它。

也许只是我本人比较幸运或幼稚了点,但我一直都认为自己赢得了经理、助手和客户的尊重。可能最重要的是,尊重是一种态度,你的态度,以及你对别人如何看待你的感知。

公众也许是块硬骨头,但是你可以在你的同事那里获得尊重。富于知识和智慧的专业人士重视他人的贡献,并会表明其对同事的尊重。IT是赢得尊重的好地方。如果你不能够在IT这个领域赢得尊重,那么很有可能在别的任何地方也得不到它。

也许只是我本人比较幸运或幼稚了点,但我一直都认为自己赢得了经理、助手和客户的尊重。可能最重要的是,尊重是一种态度,你的态度,以及你对别人如何看待你的感知。

9.极客

IT是满足你对极端技术之渴望的绝佳场所。还有什么别的地方既能够满足你的极客需求又能为此付钱给你的呢? 如果你享受按字节、GHz、图表、里程碑,还有IF THEN ELSE语句进行思考的方式,你就会喜欢上跟你有着共同兴趣和相同的独特语言的他人共事。

10.热爱

许多选择干IT的人热爱这项事业。快点承认吧。在内心深处你热爱自己的工作。就那些不是这样的人来说,那也是相对而言的。在考虑其他面向大众的工作 及其薪水时,你就会热爱上IT。如果你从自身和自己的IT工作上面找不出一丝的热爱,那么也许分道扬镳的时候快到了。 也许讲得最好的是在一次讨论中IT_Goddess的说法: “有多少人能够说自己真的喜欢乃至热爱自己的工作?我认识的好多人,都不是干IT的,都害怕投入工作。而我认识的大多IT人士,只要他们的实际工作能够获得应有的补偿,他们都很热爱自己的工作。”

也许讲得最好的是在一次讨论中IT_Goddess的说法: “有多少人能够说自己真的喜欢乃至热爱自己的工作?我认识的好多人,都不是干IT的,都害怕投入工作。而我认识的大多IT人士,只要他们的实际工作能够获得应有的补偿,他们都很热爱自己的工作。”

总结

我曾在“正规”IT这个行当中几进几出。已经从挫折这所学校里面了解到了许多坚守下来的理由。说实话,或多或少地,上述每一条我都有做不到的地方。 当你真正了解了干IT的基本理由之后,你就会知道,是IT而不是别的职业能够满足技术头脑的更多需求。况且IT工作十分好工作。根据《华尔街日报》的说 法, 2011年前5佳工作里面有2个是IT的:即软件工程师和系统分析师。 当然,我太了解哪些日常琐碎的折磨人之处了,身兼重担日复一日的压力,漫长、疲惫的时光以及众多永不见天日的坎坷挫折。一旦你的注意力停留在核销掉又一条 待办事宜列表,再回复一封电子邮件这些小事情的时候,不难理解你会只见树木不见森林。我想,意识不到自己当时所处的积极面乃是人之本性。正如琼尼·蜜雪儿 (Joni Mitchell,加拿大歌手)曾说过那样, “它似乎永远不会走,直到它真的走了,你得到了什么自己才知道。”真的,考虑到IT这么多的好处,没必要像我曾经做过的那样离开IT。

注释:原文来自互联网