最后一贴
鉴于Blogger网站经常被封,自己重新启用以前的百度空间:http://hi.baidu.com/xuqingyang/,本博客停止使用。
为什么分分秒秒都使我担惊受怕? 因为人生短暂,一日却悠长!
自己很喜欢阅读英语原版的计算机经典书籍,目前为止最喜欢的几本书籍包括:"Thinking in Java"、"Learning Perl"、"The Art of Unix Programming"。以前也接触过Richard Stevens的"Advanced Programming in the UNIX Environment"一书,是机械工业出版社的32开本的第一版,当时是因为去北京开会在北京图书大厦买到的,回来的火车上一个人翻了翻,因为要阅读Nalanda Focused Crawler开源代码,所以当时觉得有必要了解一些这方面的知识。现在经过两三年之后再来看最新修订的新版,有非常不同的感觉。可能因为对Perl语言掌握得比较熟练,现在看这本书感觉很多东西都很容易理解(同时也能间接地加深对Perl语言的理解),另外觉得自己在操作系统和Unix系统编程的知识方面自己有必要填补一下空白,所以几天前下决心把这本900多页的厚书吃透,没想到越看越喜欢,语言精炼简洁、论说清楚,几乎每一页都能学到很多。一时兴起,不知不觉已经学到了第4章,这很像自己以前读"Learning Perl"的感觉,因为没有把前面的章节完全吃透和动手实验,越看到后来感觉越吃力。自己当时学"Learning Perl"时反工了几遍,最后是把每一章后的习题认真上机通过之后才开始真正掌握了全书。今天下决心从头开始钻研APUE,并把自己学习的心得放到自己的Blog上面,欢迎志趣相近的读者留言与交流,特别的,我把自己读这本书时的疑问用蓝色显示出来,欢迎有人与我交流。
先说说拿到我手里的这本人民邮电出版社的英文原版书吧,它的开本让人感觉很舒服,但让人不解的是,既然是原版书,为什么把“序”和“前言”翻译了过来,自己还是喜欢全部原汁原味的。“序”是UNIX操作系统发明人之一Dennis Ritchie作的。我注意到他在“序”特别提到了Maurice Bach的“UNIX操作系统设计”一书,这本书在书的正文里也多次提到。不知道有没有人读过这本书,好象很经典?
然后是本书的修订者Stephen A. Rago的前言,这里面最重要的部分是他对第1版的改动有哪些,除了因为年代原因带来的更新(标准、UNIX变种)外,最主要是他增加了线程的章节。
在Richard Stevens对第一版的前言里提到这本书是作为UNIX Manual的补充出现的,所以在学习这本书的各个API时最好看一下它的man命令结果。另外他还提到“真正的UNIX书应该用troff写成,本书也遵循了这一优秀传统。最终清样是作者用James Clark写的groff软件包做出的”,我对这里面提到的软件包很感兴趣,因为这本书就可以作为这些软件包优秀的证明(也许将来我有写IT书的机会,我也可以考虑像Richard Stevens一样用它们,:)),有谁能告诉我它们到底是做什么用的?与LaTeX比较如何?
中文部分到此结束,正文终于开始了。
自从女友得到百度offer后,自己一直对和百度有关的报道很留意。昨天偶然看到一篇博客上的文章,无论身在何处,总有一种情感心牵百度——百度主任架构师周利民,里面有很多张百度前主任架构师周利民的照片,自己在2005年曾经去百度作过技术演示,当时他就坐在我的对面,是我的主要谈判对象,印象里他要比照片里的年轻很多,怎么也想不到仅仅三年时间人的面容能发生这么大的变化,我想,工作压力大、劳累很可能是促使他离开百度的重要原因。
另一件事情更让我吃惊,Google了一下“周利民”,发现一篇介绍他的网页里有这样一段话:
周利民是早期加入百度的核心技术人员之一,其个人著有《Unix系统网络编程》一书,至今依然是经典工具书。
上网一查,哪里是他的著作,不过是AUPS的作者Richard Stevens的经典之作“Unix System Network Programming"的第二译者而已(http://www.langlang.cc/ShowPrice.aspx/pid/1011297.html),书确实是经典,因为Richard Stevens的每本书几乎都是经典。
另一件类似的事情是百度的王湛生因为月底要去伦敦作关于百度的报告,网上便铺天盖地都是关于“百度要去开拓欧洲市场”的消息,真是有趣。
今天开始看Richard Stevens所著的经典的“Advanced Programming in the Unix Environment" 2005的最新版,用的是从aMule上下载的英文电子版,刚看完了第一章”UNIX System Overview",有一种从来没有过的感觉。C语言因为考研是我最早掌握的计算机语言,但如何在Unix环境下最大限度地发挥它的作用一直没有钻研过,今天读完了第一章,突然发现在Unix环境下用C编程原来可以这样地有趣,原来一本好的TextBook是如此重要。现在发现PERL语言其实很大程度上在模仿Unix下的API,这也是为什么PERL对没有Unix基础的初学者如此难学的原因。
题目叫“给5年前的自己的一封信”,我最感兴趣的是里面对计算机学习方面的感慨,摘录如下:
。。。
大学里,就不要费很多神学习C#,Delphi了,虽然这些让你做了很多小工具,很炫,很有成就感(因为在别人在在console的时候你就在dialog了),但是到最后你会发现工作后用的并不多,如果实在要学也没关系,最后对你找工作只会是有好处的,至少会在毕业的时候为你的简历增色不少,不过我更愿意你花更多的时间在操作系统、数据结构、C或者CPP上,不要以为他们很枯燥,不要认为 CUI就没有用,不要认为老师发的一本教材就够了,最后你会发现,这些认识都很肤浅,扎实的基本功比什么都重要。有空的时候,多学学unix,别老呆在 win上了,不要以为unix没有图形界面不好玩,因为你仅仅用了一次bsd就固化了这种思想而从来没去思考。不要以为unix很高深,装一个会很容易 的,自己动手就行了,因为你毕业后将完全在unix上工作了;不要去买
。。。