谁有南拳妈妈新人KAY-周鸿伟的资料

谁有南拳妈妈新人KAY-周鸿伟的资料,第1张

周鸿伟-

1.英文名:KAY

2.本名:周鸿伟

3.生日:1月3日

4.星座:水瓶

5.最喜欢的音乐:霍元甲 牡丹江 等流行歌曲

6. 对自己最有信心的地方:音乐才华、运动细胞

7. 自己最有魅力的地方:腼腆

8. 最喜欢的歌手:周杰伦 周伟波

9. 个性:开朗

10. 特殊专长:创作

11. 自己最满意的作品:原来我也怕寂寞

12. 曾演出过的电视:无

13. 出道以前从事的工作:小职员

以前的+现在的。

巨炮

1. 英文名:G-Power

2. 本名:钟佐泓

3. 生日:3月10日

4. 星座:双鱼座

5. 血型:A

6. 最喜欢的音乐:摇滚、ROCK GOOD

7. 自己最有魅力的地方:笑容、好相处

8. 最喜欢的歌手:周杰伦、蓝尼克罗维兹、爱莉沙莫莉塞斯

9. 个性:随和,但有时GY

10. 特殊专长:吉他

11. 自己最满意的作品:”小时候”太棒了

12. 曾演出过的电视:阿妹音乐爱情故事

13. 近作:唐艾宣(影子)、蔡依琳(倒带)

14. 出道以前从事的工作:唱片制作、演唱会制作

1995年,周鸿祎毕业于西安交大管理学院系统工程系,获硕士学位。周鸿祎于1998年10月创建www.3721.com,现任3721 董事长兼CTO( 首席技术官 )。此前,他曾就职方正集团,组织研发了中国互联网业界第一个自主版权的软件产品——“飞扬”电子邮件。周鸿祎具有敏锐的洞察力和对互联网的深刻理解。3721自创建至今,坚持致力于网络实名服务的技术研发和市场推广,积极发展具有自主产权的核心技术,拥有网络实名解析、智能推测等一整套自主产权的核心技术和软件著作权,申请了多项国际专利,并积极参与相关国际标准的制定。2000年5月,他被《中国青年报》推选为“IT新生代十佳青年”。 3721周鸿袆:把职业程序员进行到底 首发《程序员》杂志 记者 /闫辉 《程序员》:非常谢谢您接受我们杂志的采访,在您十年的开发生涯中,曾经写了众多的软件产品,而3721中文网址系统更是拥有了广大的用户群,你一定对程序员这个职业有很多感触吧? 周鸿袆:是的,我一直很自豪曾经是程序员,但我所说的程序员并不是仅编程这个概念的程序员。从1990年开始写第一个商业化的程序,到现在已经有十年的时间了。在这十年期间,我既做过产品设计,也做过系统集成;既做过编码工作,也做过系统分析。我在方正期间还领导和管理过程序员团队,从很小的Team到后来负责方正系统集成部门近一百人的研发中心。在这期间,我亲自带过很多的程序员,把这些刚刚大学毕业的学生培养成为软件工程师。而在这个过程中,我也亲眼看到很多非常有天赋的程序员,有的在不断前进,而也有一些慢慢的平庸了下来。所以面对《程序员》杂志和所有的程序员,的确有很多心里话要讲。 《程序员》:经历就是财富,您有这么丰富的经历,那从您的经验讲,如何做一个好程序员呢? 周鸿袆:一个好程序员是很难定义的,但我认为要做一个职业化的程序员,需要几点。首先是要有兴趣从事这个职业。现在很多人是因为软件行业的薪资高才进入的,其实没有人不想挣钱。但我的看法是,程序员是没有办法一夜暴富的。甚至可以说如果你聪明伶俐的话,做程序员不如去做销售人员的待遇和收入上升得更快一些。我认为做程序员首先一定要从兴趣上爱这个行业,否则根本无法忍受成为一个真正程序员要付出的代价。虽然现在,像我和求伯君、王志东等,的确不用写也没有时间写程序了,但从内心来讲,仍然对开发有一种冲动和热情。 第二点就是要打好基础。科班出身最好,如果不是也没有关系,我们公司也有一些不是科班出身的程序员,但我都让他们去购买一些诸如数据结构、编译原理之类的基础书籍学习,为什么这样呢?因为计算机分为两个领域:算法领域和编程领域。算法领域是数学家的事情,对他们来说,实现并不重要,重要的是找到一个算法,找到一个公式,建立一种模型。除去算法领域,其他的都属于编程的范畴。对于任何一个大型的系统,其实都可以把它分解成为若干最基本的数据结构和基本算法,而这些都是在大学本科的课程中能够学到的。我曾经剖析过很多 *** 作系统,包括DOS、Windows、UNIX,其实里面很多基础就是数据结构、数据库原理和 *** 作系统的基本原理。 第三点要做到不被周围纷乱的新名词、新事物所诱惑。现在新名词太多了,今天流行Java,明天就是C#,很多程序员便被这些东西所吸引,去追风。大家都知道“活到老,学到老”,但学习要有正确的学习方法。有些程序员以自己知道一个新名词为荣,觉得很“酷”。但实际上任何一个新的技术如果你把它外表的新名词抛掉,去查看它的来源和历史,就会发现很多都是从老知识中派生出来的,本质并没有变。 第四点就是要学会领悟和超越。计算机中的基础知识太多了,每个课程都包含了很多深层的东西。要深入了解任何一门语言,都需要很长时间的积累,经过积累,才能领悟其中的道理。比如学习一种刀法,如果仅仅是会用刀,换成一把剑就不会用了,这不是真正的高手。高手就是要能够通过学习刀进而领悟到整个器械的用法,这时无论是给你一把剑或者匕首,都可以运用自如。 《程序员》:我们知道,您在学校的时候就取得了很多的成绩,而我们的读者也有很多是在校或刚毕业的学生。您有哪些学习方法和经验值得他们借鉴呢? 周鸿袆:首先还是学好自己的基础课程。我当时上的是西安交大的特种班,专业要求很严,使我不得不把基础课学好。除此之外还有一个原因,就是我在高中的时候就编程,但那时候没有理论指导,只是靠兴趣,凭感觉,因此遇到了很多问题。当我在大学开始学习后,所学课程让我明白了很多困扰已久、百思不得其解的问题,所以内心产生了学习的欲望。这样基础打得扎实,课程学得也好,而且不是为了应付考试。现在想来,我很多灵感都是来自于学校打下的坚实基础。第二我花了很多时间去实践。当时没有现在这么好的条件,但我在学校一直利用任何一个机会在计算机上去做开发和实践,这些实践打下的基础使我这些年来受益无穷,这也是发自内心的感受。第三是利用大量的时间读源码。因为写程序一方面要读别人的程序,一方面是模仿,一方面是自己写,三者缺一不可。通过读这些源码,对语言的本质有了很深的了解,进而才能超越语言本身。比如当时新推出了Pascal的图形工具箱,很多人只是为了用它,但我却将源码通读。大师级的软件作品就象唐诗三百首一样,读起来是艺术的享受。后来我还读过C语言的库函数源代码,研究它是如何写得精致和高效的。研究生做毕业设计的时候,又花了一个月的时间仔细研读新出的MFC类库。我还把Delphi的源码和类库研读了一遍。而且当时还做了很多程序,去看C编译器输出的汇编代码。这些听起来好像都是很笨的方法,但效果是非常好的,这个习惯至今未改。第四是经常的思考。思考和学习是结合在一起的,看到别人的项目和软件,我首先会想它是怎样做的,为什么这么做?我个人非常喜欢电脑游戏,但很少上瘾,因为面对一个好游戏,我喜欢先思考这个游戏是如何制作的。比如Doom,我曾经仔细研究考虑它的三维图像和二维贴图是怎样处理的。除此之外,还有很多东西都可以让我去思考,其实在思考的过程中并不一定会得到答案,但重要的是你在思考,这样带着很多问题去看书,去听课,就会让学习变得有动力,有目的性。 《程序员》:很多刚毕业之后学生和程序员经常会产生一些疑问,比如“我做什么软件能够快速成功?做什么项目更有意义?”您对这个问题如何看待呢? 周鸿袆:我认为最重要的不是做什么,而是怎样去做。因为刚开始你根本做不了判断。做一个项目的成功与否完全取决于对这个项目的态度和投入,而不取决于项目本身。我有一个信条:一件事情,要么我不做,要么我就做好,做的有创意!因为如果不认真做,既浪费公司的时间,同时也浪费自己的时间。但如果认真做了,就会发现从这个项目得到的收获远远超过项目本身。下面我讲讲自己在方正工作的一些经历,从中你会发现,机会是自己把握的。我在方正做了好几件很多人不愿意去做的事情。第一件是我刚到方正的时候被分派到新疆做银行系统集成开发。这是一个苦差事,但我想既然来做这件事情,就一定要做的最好。到达之后,我并没有立刻动手做事,而是花了一个星期的时间来思考如何用新的开发方式来提高工作效率。后来我以毕业设计时研究VC的基础,在UNIX字符模式下实现了一套VC的类库和软件开发的平台。这个界面编辑器能够在UNIX的终端下所见即所得的设计界面,自动形成程序框架代码,自动检测错误,使用这套工具可以提高开发效率十几倍。就是这样一个不是机会的机会,不仅仅轰动了整个建行系统,同时也奠定了我在方正的位置。第二件是给国务院办公厅的领导培训电子邮件使用。其实本身这件事情是非常无聊的,就是讲述CCmail的使用,很多人可能就随便讲讲课,应付了事。那时Internet应用刚刚开始,但我从这次培训开始,找到了很多相关的资料,在学习过程中对电子邮件产生了浓厚的兴趣,并感觉做一套Internet的邮件系统会非常有前途。而且通过和学员的交谈,发现他们很难学会技术化产品的 *** 作,于是产生了开发一套人性化的电子邮件系统的想法,这件事也奠定了我后来开发方正飞扬这个产品的知识基础和思路。第三件就是在撤销方正飞扬这个项目之后,我再次被指派到新疆去解决银行系统无法处理大量数据的问题。因为当时一个省级银行每天要做数千万笔交易,这个访问量是非常大的,整套系统无法承受。要解决的就是如何在不升级硬件的情况下提高系统效率。这个事情没有人愿意去,一方面是远,更重要的是很难知道这件事情会做成怎样。当然我也不想去,但既然去了,就要做出成绩来。在新疆工作了一年半之后,我把这个问题解决了。而且在解决这个问题的过程中获得了很大的收获,比如对企业级软件如何利用中间件来提高性能,提高容错能力有了很好的认识,还研究了企业级软件的体系结构;最重要的是了解了数据库系统如何优化,尤其是在处理海量数据访问的情况下,仍然能够保证速度和性能方面收益菲浅。所有这些都为现在3721能够开发出高效率的搜索引擎打下了一个很好的基础,因此我说,如果当时我没有去的话,对于3721来说,即便我有了一个很好的想法,但是否能够做成一个成功的产品还很难说。 《程序员》:现在很多程序员被日新月异的新技术、纷乱的新名词搞的不知如何是好,那您在遇到过这种情况的时候是如何处理的呢? 周鸿袆:人的生命和精力是有限的,如何在有限的时间中更好的学习和提高自己,这是一个很重要的课题。有些人喜欢追逐新名词,蜻蜓点水的学习新东西,我觉得这样做既浪费精力,又使自己很累,而且效果也不好。其实计算机所有的东西都是相通的,换句话说,好的程序员在Windows、DOS、UNIX下编程没有什么区别,体现的就是编程的功力,用什么语言也不重要,体现的是你对问题如何去解决及对算法和数据结构的把握,对语言本质的了解。同其他的开发人员一样,我也遇到过很多的问题,我解决流程一般是:学习基础理论知识-聚焦-扎实的做事,而每个环节都要思考。我上大二的时候参与过学校课题组的一个项目,是国内的程控交换机检错系统,我分到了自动报警中的屏幕显示出错中部件和电路图的模块。在我之前,有毕业生准备把二千多张图纸输入到计算机中,可是毕业设计做了几个月,也就画了几张图,不了了之。虽然当时没有什么经验,但我首先花了很多时间思考这个问题。后来受苹果电脑上画图系统的启发,写了一个画图程序。这个程序可以画元件、连接元件并加标注。而且还可以把线路图按照数据库的形式存储到计算机里面,并能很方便的调用。最终这个项目取得了非常大的成功。同时也奠定了我的软件思维模式,就是如何创建通用的解决问题的方法。而当时我为了做这个产品,我花了一个月的时间研究了Turbo Pascal的图形库。到了方正之后,接触到了刚刚兴起的Internet,同很多人一样,我对Internet带来新事物和应用感到迷惑和慌张,不知从何处下手,感觉新名词天天都学不完,又怎么可能掌握它呢?但我很快就从迷惑中清醒了出来,认识到现在看到的都是表面的事物,不是本质的东西。我首先要了解互联网的本质,了解互联网的思想。因此当时我分了三个阶段,第一阶段找了很多讲述互联网通讯技术理论的书籍,试图对整个互联网做技术上的把握。第二阶段我就选择了Email作为切入点,虽然当时互联网上有很多的应用,但我只选择了电子邮件作为主攻方向,而且先从邮件客户端开始去研究各种互联网标准。第三步就是花费了一年半的时间扎实的去做邮件系统。当我做完邮件系统之后,已经对网络有了深刻的感性认识。 《程序员》:您认为要做一个职业程序员,如何处理开发和市场之间的关系呢? 周鸿袆:做一个程序员,不能只埋头编程,一定要跳出开发者的狭隘的技术眼光,能够到市场和客户那里去看一看。我比较幸运,因为做过的项目都有客户需求,这样就可以和客户建立很好的技术沟通。在我上研究生的后半年,我花了很多时间到公司中学习其他的各种技能,学习谈生意,接触客户。当时我对编程以外的很多事情都有兴趣,包括攒机器、装软件、做培训。这些事情看起来很无聊,但一方面提高了同他人沟通的能力,另一方面也让我知道了客户和企业的需求。后来做病毒卡的时候,又接触到了售后服务的问题。所有这些都让我清楚了做产品要从用户的角度出发,而不能从自己的角度出发。同时我也把这个思路带到了方正飞扬电子邮件和3721系统中。所以我建议程序员可以一段时间不写程序,出去走走。就象古代诗人只坐在房间里,写不出来很好的作品,而出去游历一下名山大川,感受一下大自然,回来之后自会有另外的一番感受和境界。 《程序员》:不知道您喜不喜欢足球?中国软件业近些年来就象中国足球一样,备受指责。那作为软件业主体的程序员也一定存在很多自身的缺陷,您认为主要表现在哪里呢? 周鸿袆:我个人很喜欢足球,我做开发时,业余时间经常踢足球,而且我比较喜欢踢前锋。而看比赛我一般只看高水平的国外联赛。我觉得我们的有些程序员存在一些致命伤,比如好高骛远。这些程序员比较年轻,热血沸腾,总是对中国软件产业忧心忡忡。还有很多人提出要做中国的 *** 作系统,要挽救中国软件业。其实他们没有看到,就美国来说,很多程序员是从五六十年代就开始编程的。没有发展了几十年的软件产业,没有众多程序员积累,不可能诞生像Windows这样的 *** 作系统的。另外对于Quake 3,大家都觉着好玩,有人声称也要做一个,其实他没有看到,Quake 3前面还一代、二代的程序,Quake前面还有Doom,Doom前面还有Wolf 3D做基础,而做Wolf 3D的一群程序员也有数年的游戏开发经验。所以说软件就象文化一样,是一个需要知识积累和沉淀的。我们的程序员与其杞人忧天,不如扎实的把自己能做的事情做好。另外我建议年轻的程序员不要急于搞软件工程。因为从另一方面讲是对自己没有信心的一种表现。我觉得要做一名职业的程序员,他的青春和职业生命也应该是比较长的。很多非常年轻的程序员很早就开始研究Rose,UML之类的,自己感觉比较时髦。可是作为一个专业的程序员,如果没有丰富的实践经验,脱离一个很扎实的基础,就算是学到了系统分析和系统设计的一个皮毛,那成功的可能性也是很小的。想成大事的人要能够经受住各种磨难,要有韧性。任何一个产品都是用心血浇灌成的。我做开发的时候感觉最多的就是有很多的不眠之夜,经常工作到天亮,连轴工作,一个问题解决了,刚松口气,有了很大的成就感,突然又出现了一个新问题,就这样在希望和绝望的巅峰和谷底之间来回震荡,真的是很刺激,所以我喜欢做程序员。但当你把一个比较完美的作品做出来的时候,会感觉自己像被扒了三层皮一样,太累了。所以我送所有的程序员一句话:你觉得自己很聪明,是天才,但天下这种人太多了,你想在三到五年就把别人十年做的事情做一遍,那你也一定会把别人在十年中所受的苦难在这三到五年经历一遍,没有韧性是绝对不行的。 《程序员》:再次感谢您接受我们的采访,近来,世界杯预选赛中国队踢的不错,有一种脱胎换骨的感觉,但愿我们的程序员也能像中国足球队员一样,换一个新面貌。 采访后记: 早在采访之前,便听说过很多关于周鸿袆的故事。有位朋友告诉我:"周鸿袆是一个聪明人!"但采访完之后,我感到他不仅是一个聪明人,还是一个非常勤奋、有思想的人。两个小时的采访中他只喝了两口水,剩余的时间都在思考和回答问题,从他的眼神和语言中,恨不能把这些年的感受和经验全部倾倒出来。他的言语非常有逻辑,有条理,好像仍然在编写一个程序。

楼上的几位显然误会我的意思了,我并不是说不应当写文档加注释注重团队精神,看看下面的一篇文章,那位三天就写出UNIX的他需要写文档注释和团队精神吗,他用不着。哪个高手没有一点傲气和自信,他之所以敢对用户说:拿到你想要的,然后滚蛋,你已经很幸运了!是因为他有这个资本。天才本就不循规蹈矩,那样他就不叫天才了。

MIT BBS上说微软电话面试的一道题就是“Who do you think is the best coder,

and why?”。我觉得挺有意思的,也来凑个热闹。排名不分先后。

Bill Joy, 前任Sun的首席科学家,当年在Berkeley时主持开发了最早版本的BSD。他还

是vi和csh的作者。当然,Csh Programming Considered Harmful 是另一个话题乐。据

说他想看看自己能不能写个 *** 作系统,就在三天里写了个自己的Unix, 也就是BSD的前

身。当然是传说了,但足见他的功力。另一个传说是,1980年初的时候,DARPA让BBN在

Berkley Unix里加上BBN开发的TCP/IP代码。但当时还是研究生的B伯伯怒了,拒绝把BBN

TCP/IP加入BSD,因为他觉得BBN的TCP/IP写得不好。于是B伯伯出手了,端的是一箭封

喉,很快就写出了高性能的伯克利版TCP/IP。当时 BBN和DARPA签了巨额合同开发TCP/IP

Stack,谁知他们的代码还不如一个研究生的好。于是他们开会。只见当时B伯伯穿

个T-shirt出现在会议室(当时穿T-shirt不象现在,还是相当散漫的哈)。只见BBN问:你

怎么写出来的?而B伯伯答:简单,你读协议,然后编程就行了。最令偶晕倒的是,B伯

伯硕士毕业后决定到工业界发展,于是就到了当时只有一间办公室的Sun, 然后他就把

Sparc设计出来乐。。。象这种软硬通吃的牛人,想不佩服都不行的说。据Bill Joy的同

事说,一般开会的时候B伯伯总是拿一堆杂志漫不经心地读。但往往在关键之处,B伯伯

发言,直切要害,提出漂亮的构想,让同事们彻底崩溃。对了,他还是Java Spec和JINI

的主要作者之一。

John Carmack,ID Software的founder和Lead Programmer。上个月和一个搞图形的师兄

聊天,他竟然不知道John Carmack, 也让偶大大地晕了一把。不过也许搞研究的和搞实

战的多少有些隔吧。想必喜欢第一人称射击游戏的都知道J哥哥。90年代初只要能在PC

上搞个小动画都能让人惊叹一番的时候,J哥哥就推出了石破天惊的Castle Wolfstein,

然后再接再励,doom, doomII, Quake...每次都把3-D技术推到极限。J哥哥的简历上说

自己的专长是"Exhaust 3-D technology",真是牛人之言不我欺的说。做J哥哥这样的人

是很幸福的,因为各大图形卡厂家一有了新产品就要向他“进贡"

,不然如果他的游戏不支持哪种卡,哪种卡基本就会夭折乐。当初MS的Direct3D也得听

取他的意见,修改了不少API。当然,J哥哥在结婚前十数年如一日地每天编程14小时以

上,也是偶们凡人望尘莫及的。对了,J哥哥高中肆业(?),可以说是自学成才。不过

呢,谁要用这个例子来为自己学习不好辩护,就大错特错了。那 Leonardo Da Vinci还

是自学成才呢(人是私生子,不能上学)。普通人和天才还是有区别的。对了,其实偶们

叫“达分奇”是相当不对的,因为Vinci是地名,而Da Vinci就是从Vinci来的人的意

思。换句话说,Leonardo Da Vinci就是“从Vinci来的Leonardo”的意思。叫别

人“Da Vinci”就不知所谓乐。嗯,扯远了,打住。

David Cutler,VMS和Windows NT的首席设计师,去微软前号称硅谷最牛的kernel开发

员。当初他和他的手下在微软一周内把一个具备基本功能的bootable kernel写出来,然

后说:“who can't write an OS in a week?",也是牛气冲天的说。顺便说一句,D爷

爷到NT3.5时,管理1500名开发员,自己还兼做设计和编程,不改coder本色啊。

D爷爷天生脾气火爆,和人争论时喜欢双手猛击桌子以壮声势。 日常交谈fuck不离口。

他面试秘书时必问:"what do you think of the word 'fuck'?" ,让无数美女刹羽而

归。终于有一天,一个同样火爆的女面对这个问题脱口而出:"That's my favorite

word"。于是她被录取乐,为D爷爷工作到NT3.5发布。

Don Knuth。高爷爷其实用不着偶多说。学编程的不知道他就好像学物理的不知道牛顿,

学数学的不知道欧拉,学音乐的不知道莫扎特,学Delphi的不知到 Anders Hejlsberg,

或者学Linux不知道Linus Torvalds一样,不可原谅啊。为了让文章完整,就再罗唆几句

吧。高爷爷本科时就开始给行行色色的公司写各种稀奇古怪的编译器挣外快了。他卖给别

人时收一两千美元,那些公司拿了code,加工一下卖出去就是上万上十万。不过也没见高

爷爷不爽过,学者本色的说。想想那可是60年代初啊,高爷爷写编译器写多了,顺带就搞

出了个 Attribute Grammar和LR(k),大大地造福后人啊。至于高爷爷在CalTech的编程比

赛(有Alan Kay得众多高高手参加)总是第一,写的Tex到86年就code freeze,还附带2^n

美分奖励等等都是耳熟能详的,偶就不饶舌乐。

顺便说一下,高老大爷是无可争议的写作高手。他给Concrete Mathematics 写的前言可

谓字字铿锵,堪为前言的典范。他的技术文章也是一绝,文风细致,解释精当,而且没

有学究气,不失轻快跳脱。记得几年前读Concrete Mathemathics,时不时开怀大笑,让

老妈极其郁闷,觉得我nerdy到家,不可救药。其实呢,子非鱼,安知鱼之乐,更不知那

完全是高爷爷的功劳。说到写作高手,不能不提Stephen A. Cook。他的文章当年就被我

们的写作老师极力推荐,号称典雅文风的样本。库爷爷一头银发,身材颀长,总是面带

谦和的微笑,颇有仙风道骨,正好和他的仙文相配的说。

高爷爷其实还是开源运动的先驱。虽然他没有象Richard Stallman那样八方奔走,但他

捐献了好多作品,都可以在网上看到,比如著名的Mathematical Writing,MMIXWare,

The Tex Book等,更不用说足以让他流芳百世的Tex乐。

Ken Thompson,C语言前身B语言的作者,Unix的发明人之一(另一个是Dennis M. Riche

老大,被尊为DMR),Belle(一个厉害的国际象棋程序)的作者之一, *** 作系统Plan 9的主

要作者(另一个是大牛人Rob Pike,

前不久被google挖走了)。Ken爷爷也算是计算机历史上开天辟地的人物了。1969年还是

计算机史前时代,普通人都认为只有大型机才能运行通用的 *** 作系统,小型机只有高山

仰止的份儿。至于用高级语言来写 *** 作系统,更是笑谈。Ken爷爷自然不是池中物,于是

他和DMR怒了,在1969年到1970间用汇编在PDP-7上写出了UNIX的第一个版本。他们并不

知道,一场轰轰烈烈的UNIX传奇由此拉开了序幕。Ken爷爷在1971年又把Unix用C重写,

于是C在随后20年成就了不知多少豪杰的梦想和光荣。

Ken爷爷还有段佳话: 装了UNIX的PDP-11最早被安装在Bell Lab里供大家日常使用。很

快大家就发现Ken爷爷总能进入他们的帐户,获得最高权限。Bell

Lab里的科学家都心比天高,当然被搞得郁闷无比。于是有高手怒了,跳出来分析了UNIX

代码,找到后门,修改代码,然后重新编译了整个UNIX。就在大家都以为“这个世界清

净了”的时候,他们发现Ken爷爷还是轻而易举地拿到他们的帐户权限,百思不解后,只

好继续郁闷。谁知道这一郁闷,就郁闷了14年,直到Ken爷爷道出个中缘由。原来,代码

里的确有后门,但后门不在Unix代码里,而在编译Unix代码的C编译器里。每次C编译器

编译UNIX的代码,就自动生成后门代码。而整个Bell Lab的人,都是用Ken爷爷的C编译

器。

(6)Rob Pike, AT&T Bell Lab前Member of Technical Staff ,现在google研究 *** 作系

统 。罗伯伯是Unix的先驱,是贝尔实验室最早和Ken Thompson以及Dennis M. Ritche开

发 Unix的猛人,UTF-8的设计人。他还在美国名嘴David

Letterman的晚间节目上露了一小脸,一脸憨厚地帮一胖子吹牛搞怪。让偶佩服不已的

是,罗伯伯还是1980年奥运会射箭的银牌得主。他还是个颇为厉害的业余天文学家,设

计的珈玛射线望远镜差点被NASA用在航天飞机上。他还是两本经典,The Unix

Programming Environment 和 The Practice of Programming 的作者之一。如果初学者

想在编程方面精益求精,实在该好好读读这两本书。它们都有中文版的说。罗伯伯还写

出了Unix下第一个基于位图的窗口系统,并且是著名的blit终端的作者。当然了,罗伯

伯还是号称锐意革新的 *** 作系统,Plan9,的主要作者。可惜的是,Plan9并没有引起多

少人的注意。罗伯伯一怒之下,写出了振聋发聩的雄文 Systems Software Research is

Irrelevant,痛斥当下系统开发的不思进取,固步自封的弊病。虽然这篇文章是罗伯伯

含忿出手,颇有偏激之词,但确实道出了系统开发的无奈:开发周期越来越长,代价越

来越大,用户被统一到少数几个系统上,结果越来越多的活动是测量和修补,而真正的

革新越来越少。

就在罗伯伯郁闷之极的时候,google登门求贤来乐。如果说现在还有一家大众公司在不

遗余力地把系统开发推向极致的话,也就是google乐。随便看看google的成果就知道

了。具有超强容错和负载平衡能力的分布式文件系统GFS

(现在能够用100,000台廉价PC搭起一个巨型分布系统,并且高效便宜地进行管理的系统

也不多哈),大规模机器学习系统(拼写检查,广告匹配,拼音搜寻。。。哪个都很牛的

说),更不用说处理海量并行计算的各式google服务了。Rob在System Software

Research is Irrelevant里萧瑟地说现在没有人再关心系统研究的前沿成果了。想不到

他错了,应为google关心。google网络了大批功成总是试图吸取系统研究的最新成果。

想必Rob Pike在google很幸福。愿他做出更棒的系统。

Dennis M. Ritchie, 既然Ken Thompson是我的偶像,新闻组上人称DMR的Dennis M.

Ritchie自然也是,毕竟两人共同缔造了UNIX,而Dennis几乎独力把C搞大(当然,C的前

身是B,而B是Ken Thompson一手做出来的)。两人1983年分享图灵奖,是有史以来少数几

个因工程项目得奖的工程师(本来是唯一的一对儿,但Alan Kay才因为SmallTalk得奖,

所以就成了唯二的乐) 一个人一生能做出一个卓越的系统已经不易,DMR的C和UNIX长盛

不衰近30年,至今生机勃勃,DMR此生可以无憾的说。

D爷爷也算有家学渊源:他老爸在AT&T贝尔实验室工作了一辈子,并在电路设计方面卓有

成就,还出了本颇有影响的书The Design of Switching Circuits,据说在交换理论和

逻辑设计方面有独到的论述。当然,D爷爷和他老爸是不同时代的人:他老爸的研究成

形于晶体管发明之前,而D爷爷的工作离了晶体管就玩儿不转乐。:-D

不要看D爷爷搞出了C,其实他最爱的编程语言是Alef,在Plan9上运行,支持并行编程。

Alef的语法和C相似,但数据类型和执行方式都和C大大不同。说到语言,D爷爷对后来

人有非常中肯的建议:抱着学习的目的来开发你自己的语言,不要冀望于它被众人接

受。这个建议不光对语言开发有用,也适用于其它大型系统的开发。别的不说,DMR后来

领导自己的团队在1995年和1996分别推出了Plan9和Inferno *** 作系统,又用多少人知道

呢?其实,D爷爷当初也没想过C会风行世界。他开发C的初衷和Eric S. Raymond

在Cathedral and Bazaar里阐述的一样,就是要消除自己对现有工具的不爽之处。谁

知D爷爷无心插柳,C竟然受到众多程序员的狂热拥戴,连D爷爷自己都大惑不解。在一次

采访中D爷爷说大概那是因为C的抽象程度碰巧既满足了程序员的要求, 又容易实现。当

然C一度是Unix上的通用语言也是原因。但不管怎么说,D爷爷对编程语言出色的审美意

识奠定了C广为流传的基础。

最后八卦一下。D爷爷的业余爱好和NBA大牛Karl Malone一样:开卡车。不过D爷爷更喜

欢开NASCAR,而KM独爱巨无霸。J D爷爷自称心中不供偶像,如果一定要说一个,那就

是Ken Thompson了。现在Ken爷爷退休当飞机教练去了,而D爷爷当了贝尔实验室系统开

发部的头,整日忙于开支票。他俩合作20年,屡屡创造历史。这段令人神往的佳话,也

就长留你我心中乐。

P.S., 很多人都以为Brian W. Kernighan是C的作者。其实BWK只是写了那本经典K&R C。

据D爷爷说,他,Ken, 和Kernighan三人中,Kernighan最能写文章,他次之,而Ken写

得最少;但说到编程,Ken爷爷才是当之无愧的老大。

Edsger Wybe Dijkstra, 对,就是E.W. Dijkstra. 一提到EWD,很多人就会想起找最短

路径的Dijkstra Algorithm,就好像一提到Sir. Tony Hoare,就想起Quick Sort一样。

其实这些个算法不过是两个牛人在他们职业生涯中最琐碎的贡献。比如Dijkstra算法,

无非是戴爷爷在1956年为了展示新计算机

ARMAC的计算能力,初试身手的成果,属于他的算法处女作。据戴爷爷自述,他搞出最

短路径算法的时候连纸笔都没用。当时他和他老婆在阿姆斯特丹一家咖啡厅的阳台上晒

太阳喝咖啡,突然就把这个算法想出来乐。而且当时的算法研究还比较原始,牛人们忙

着用计算机搞数值计算,对离散算法不屑一顾。那时连一个象样的专注于离散算法的专

业期刊都没有。戴爷爷于是推迟发表这个算法。直到1959年,他才把这个算法发表

在Numerische Mathematik的创刊号上,权为捧场。:-)

EWD在多个领域牛气冲天,端的是理论和编程两手硬的高手。只不过他的很多工作比较

深刻,学校的老先生们觉得本科生接受不了,不给本科生讲而已。

戴爷爷大概因为最短路径算法一战成名,于是有人请他参加另一台计算机X1的设计工

作,并且把设计实时中断系统的任务派给了他。现在看来实时中断也许不算什么,但要

知到,X1前根本就没有实时中断的概念。实现它简直就是一场豪赌。戴爷爷起初还不情

愿,但经不住项目负责人Bram和Carel的轮番 “吹捧”:我们知道实时中断让您工作变

得非常困难,但象您这样的牛人肯定能做出来的说。结果戴爷爷被糖衣炮d彻底击穿,

接下了这个烫手山芋。两三年后,他不仅搞出了实时中断,还围绕这个写出了自己的博

士论文,顺利戴上博士帽。

让戴爷爷真正成名立万的还是在X1上开发的Algo60,最早的高级语言之一。戴爷爷没日

没夜地工作了8个月,就搞出了Algo60,也因此获得了 1972年的图灵奖。因为Algo60,

戴爷爷发表了一篇石破天惊的文章:Recursive

Programming,于是人们才知道,原来高级语言也可以高效地实现递归,原来从此以后,

所有程序员都不可避免地和戴爷爷发明的一个词(应该说是概念)打交道:堆栈。

而且Algo60还让戴爷爷深入地思考多道程序设计的问题,最终发明了每个系统程序员

都绕不开的概念:semaphore。当然,戴爷爷总是把他发明的概念严格形式化,极具科

学家本色的说。和这些成就想比,他提出的吃饭的哲学家问题,也就没什么好说的了。

说来好笑,当时的大学(忘了哪所了)还是觉得戴爷爷没有受过正统的数学训练,也不是

专门搞数值分析的,所以最后不太情愿地给了他一个教职。这种小挫折并不能妨碍象戴

爷爷这样的牛人创造历史。他一边教数值分析(:-D) ,一边开始开发一个新的 *** 作系

统,并培养计算机科学家。几年后,THE Multiprogramming

System横空出世。THE是第一个支持松散耦合,显式同步的进程并由此使得严格证明系统

没有死锁变得容易的 *** 作系统。可惜戴爷爷任职的系不识货,还强行解散了他的研究小

组(1972年戴爷爷给他的系主任说他得了图灵奖,系主任的第一反应是你们搞计算机就

喜欢乱发奖)。这让戴爷爷相当郁闷,得了抑郁症。在极度郁闷之中,戴爷爷决定用写作

来治疗自己的抑郁症。于是经典就诞生乐:Notes on Structured Programming。戴爷爷

从此被尊为结构化编程的奠基人,而且他的抑郁症也被治好乐。

EWD太牛,结果他的故事也太多。先到这里吧。1973起,他的故事就在美国发生了。

Anders Hejlsberg,微软.NET的首席架构师,编程语言设计和实现的顶尖高手。他一手

做出了 Turbo Pascal, 也是Delphi, J++(尤其是WFC),C#, 和.NET的主要作者。这些作

品的名字足以为他立传。作为一个程序员,我在这样的大师面前实在无语。生子当

如Anders的说。李维的<>里已详细讲述了Anders的传奇故事,我就不用费舌了:

http: //java.mblogger.cn/iexploiter/posts/1505.aspx

Artima上有Anders谈C#的系列访谈。MSDN上有一段Anders导游的录像 。有兴趣可以去看

看牛人的丰采。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8117714.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存