2007/05/23

胡侃学习(理论)计算机 Sir (阿涩)

胡侃学习(理论)计算机
Sir (阿涩)

10/2001

******************************************************************
版权声明:本文作者sir系旅美学人、南京大学校友。
为了学术或 教育的(非营利)目的,在保留本版权声
明的情况下,您可以自由 转载本文的电子版。如果您
要在传统媒体上转载此文,请与南京大 学小百合BBS
站上的网友sir联系。
******************************************************************

我也来冒充一回高手,谈谈学习计算机的一点个人体会。由于我是做理论的,所以先着重谈谈理论。

记得当年大一,刚上本科的时候,每周六课时数学分析,六课时高等代数,天天作业不断(那时是六日工作制)。颇有些同学惊呼走错了门:咱们这到底念的是什么系?不错,你没走错门,这就是(当时的)南大计算机系。系里的传统是培养做学术研究,尤其是理论研究的人。而计算机的理论研究,说到底了就是数学,虽然也许是正统数学家眼里非主流的数学。

数学分析这个东东,咱们学计算机的人对它有很复杂的感情。爱它在于它是第一门,也是学分最多的一门数学课,又长期为考研课程--94以前可以选考数学分析与高等代数,以后则并轨到著名的所谓"工科数学一"。其重要性可见一斑。恨它则在于它好象难得有用到的机会,而且思维跟咱们平常做的这些离散/有限的工作截然不同。当年出现的怪现象是:计算机系学生的高中数学基础在全校数一数二(希望没有冒犯其它系的同学),教学课时数也仅次于数学系,但学完之后的效果却几乎是倒数第一。其中原因何在,发人深思。

我个人的浅见是:计算机类的学生,对数学的要求固然跟数学系不同,跟物理类差别则更大。通常非数学专业的所谓"高等数学",无非是把数学分析中较困难的理论部分删去,强调套用公式计算而已。而对计算机系来说,数学分析里用处最大的恰恰是被删去的理论部分。说得难听一点,对计算机系学生而言,追求算来算去的所谓"工科数学一"已经彻底地走进了魔道。记上一堆曲面积分的公式,难道就能算懂了数学分析?

中文的数学分析书,一般都认为以北大张筑生老师的"数学分析新讲"为最好。我个人认为南大数学系的"数学分析教程"也还不错,至少属于典型的南大风格,咱们看着亲切。随便学通哪一本都行。万一你的数学实在太好,这两本书都吃不饱,那就去看菲赫金哥尔茨的"微积分学教程"好了--但我认为没什么必要,毕竟你不想转到数学系去。

吉米多维奇的"数学分析习题集"也基本上是计算型的东东。如果你打算去考那个什么"工科数学一",可以做一做。否则,不做也罢。

中国的所谓高等代数,就等于线性代数加上一点多项式理论。我以为这有好的一面,因为可以让学生较早感觉到代数是一种结构,而非一堆矩阵翻来覆去。当年我们用林成森,盛松柏两位老师编的"高等代数",感觉相当舒服,我直到现在还保留着教材。此书相当全面地包含了关于多项式和线性代数的基本初等结果,同时还提供了一些有用的比较深的内容,如Sturm序列,Shermon-Morrison公式,广义逆矩阵等等。可以说,作为本科生如能吃透此书,就可以算高手。后来它得以在南大出版社出版,可惜好象并轨以后就没有再用了。

国内较好的高等代数教材还有清华计算机系用的那本,清华出版社出版,书店里多多,一看就知道。特点嘛,跟南大那本差不太多。

但以上两本书也不能说完美无缺。从抽象代数的观点来看,高等代数里的结果不过是代数系统性质的一些例子而已。莫宗坚先生的"代数学"里,对此进行了深刻的讨论。然而莫先生的书实在深得很,作为本科生恐怕难以接受,不妨等到自己以后成熟了一些再读。

概率论与数理统计这门课很重要,可惜少了些东西。

少了的东西是随机过程。到毕业还没有听说过Markov过程,此乃计算机系学生的耻辱。没有随机过程,你怎么分析网络和分布式系统?怎么设计随机化算法和协议?据说清华计算机系开有"随机数学",早就是必修课。人家可是工科学校,作为自以为"理科计算机系"出身的人,我感到惭愧。

另外,离散概率对计算机系学生来说有特殊的重要性。现在,美国已经有些学校开设了单纯的"离散概率论"课程,干脆把连续概率删去,把离散概率讲深些。我们不一定要这么做,但应该更加强调离散概率是没有疑问的。

计算方法是最后一门由数学系给我们开的课。一般学生对这门课的重视程度有限,以为没什么用。其实,做图形图像可离不开它。而且,在很多科学工程中的应用计算,都以数值的为主。

这门课有两个极端的讲法:一个是古典的"数值分析",完全讲数学原理和算法;另一个是现在日趋流行的"科学与工程计算",干脆教学生用软件包编程。南大数学系的几位老师做了件大好事,把前者的一本极为经典的教材翻译出版了:德国Stoer的"数值分析引论"。如果你能学会此书中最浅显的三分之一,就算没有白上过计算方法这门课!而后一种讲法似乎国内还没有跟上潮流?不过,只要你有机会在自己的电脑上装个matlab之类,完全可以无师自通。

本系里,通常开一门离散数学,包括集合论,图论,和抽象代数,另外再单开一门数理逻辑。这样安排,主要由于南大的逻辑传统:系里很多老师都算莫先生的门人,就连孙先生都是逻辑专业出身(见孙先生自述)。

不过,这么多内容挤在离散数学一门课里,是否时间太紧了点?另外,计算机系学生不懂组合和数论,也是巨大的缺陷。要做理论,不懂组合或者数论吃亏可就太大了。

从理想的状态来看,最好分开六门课:集合,逻辑,图论,组合,代数,数论。这个当然不现实,因为没那么多课时。也许将来可以开三门课:集合与逻辑,图论与组合,代数与数论。

不管课怎么开,学生总一样要学。下面分别谈谈上面的三组内容。

古典集合论,北师大出过一本"基础集合论"不错。南大出版朱梧(木贾)老师的"集合论导引"也许观点更高些,但他的书形式化得太厉害,念起来吃力。

数理逻辑,莫先生的书自然是经典。然而我们也不得不承认,此书年代久远,光读它恐怕不够。尤其是命题/谓词演算本身有好多种不同的讲法,多看几家能大大开阔自己的视野。例如陆钟万老师的"面向计算机科学的数理逻辑"就不错。朱老师也著有"数理逻辑教程"一书,但也同样读起来费力些。

总的来说,学集合/逻辑起手不难,但越往后越感觉深不可测。建议有兴趣的同学读读朱老师的"数学基础引论"--此书有点时间简史的风格,讲到精彩处,所谓"天花乱坠,妙雨缤纷",令人目不暇接。读完以后,你对这些数学/哲学中最根本的问题有了个大概了解,也知道了山有多高,海有多深。

学完以上各书之后,如果你还有精力兴趣进一步深究,那么可以试一下GTM系列中的"Introduction to Axiomatic Set
Theory"和"A Course of Mathematical
Logic"。这两本都有世界图书的引进版。你如果能搞定这两本,可以说在逻辑方面真正入了门,也就不用再浪费时间听我瞎侃了。:)

据说全中国最多只有三十个人懂图论(当年上课时陈道蓄老师转引张克民老师的话)。此言不虚。图论这东东,技巧性太强,几乎每题都有一个独特的方法,让人头痛。不过这也正是它魅力所在:只要你有创造性,它就能给你成就感。所以学图论没什么好说的,做题吧。

国内的图论书中,王树禾老师的"图论及其算法"非常成功。一方面,其内容在国内教材里算非常全面的。另一方面,其对算法的强调非常适合计算机系(本来就是科大计算机系教材)。有了这本书为主,再参考几本翻译的,如Bondy&Murty的"图论及其应用",邮电出版社翻译的"图论和电路网络"等等,就马马虎虎,对本科生足够了。

再进一步,世界图书引进有GTM系列的"ModernGraph
Theory"。此书确实经典!国内好象还有一家出版了个翻译版。不过,学到这个层次,还是读原版好。搞定这本书,也标志着图论入了门,呵呵。组合感觉没有太适合的国产书。还是读Graham和Knuth
等人合著的经典"具体数学"吧,有翻译版,西电出的。

抽象代数,国内经典为莫宗坚先生的"代数学"。此书是北大数学系教材,深得好评。然而对本科生来说,此书未免太深。可以先学习一些其它的教材,然后再回头来看"代数学"。国际上的经典可就多了,GTM系列里就有一大堆。推荐一本谈不上经典,但却最简单的,最容易学的:

http://www.math.miami.edu/~ec/book/

这本"Introduction to Linear and Abstract
Algebra"非常通俗易懂,而且把抽象代数和线性代数结合起来,对初学者来说非常理想。不过请注意版权问题,不要违反法律噢。

数论方面,国内有经典而且以困难著称的"初等数论"(潘氏兄弟著,北大版)。再追溯一点,还有更加经典(可以算世界级)并且更加困难的"数论导引"(华罗庚先生的名著,科学版,九章书店重印)。把基础的几章搞定一个大概,对本科生来讲足够了。但这只是初等数论。本科毕业后要学计算数论,你必须看英文的书,如
Bach的"Introduction to Algorithmic Number
Theory"。理论计算机的根本,在于算法。现在系里给本科生

开设算法设计与分析,确实非常正确。环顾西方世界,大约没有一个三流以上计算机系不把算法作为必修的。

算法教材目前公认以Corman等著的"Introduction to
Algorithms"为最优。对入门而言,这一本已经足够,不需要再参考其它书。南大曾翻译出版此书,中文名为"现代计算机常用数据结构与算法"。
pie好象提供了网上课程的link,我也就不用废话。

最后说说形式语言与自动机。我们用过北邮的教材,应该说写的还清楚。但是,有一点要强调:形式语言和自动机的作用主要在作为计算模型,而不是用来做编译。事实上,编译前端已经是死领域,没有任何open
problem。如果为了这个,我们完全没必要去学形式语言--用用yacc什么的就完了。北邮的那本,在深度上,在跟可计算性的联系上都有较大的局限,现代感也不足。所以建议有兴趣的同学去读英文书......不过英文书中好的也不多,而且国内似乎没引进这方面的教材。

入门以后,把形式语言与自动机中定义的模型,和数理逻辑中用递归函数定义的模型比较一番,可以说非常有趣。现在才知道,什么叫"宫室之美,百官之富"!

胡侃学习计算机--理论之外


如果计算机只有理论,那么它不过是数学的一个分支,而不成为一门独立的科学。事实上,在理论之外,计算机科学还有更广阔的天空。我一直认为,4年根本不够学习计算机的基础知识,因为面太宽了......
一个一流计算机系的优秀学生决不该仅仅是一个编程高手,但他一定首先是一个编程高手。

我上大学的时候,第一门专业课时程序设计,现在好象改成了计算机科学导论?不管叫什么名字,总之,念计算机的人就是靠程序吃饭。

去年在计算机系版有过一场争论,关于第一程序设计语言该用哪一种。我个人认为,用哪种语言属于末节,关键在养成良好的编程习惯。当年老师对我们说,打好基础后学一门新语言只要一个星期。现在我觉得根本不用一个星期--前提是先把基础打好。

数据结构有两种不同的上法:一种把它当成降低要求的初级算法课,另一种把它当成高级的程序设计课。现在国内的课程好象介乎两者之间,而稍偏向前者。我个人认为,假如已经另有必修的算法课,恐怕后一个目的更重要些。

国内流行的数据结构书也有两种:北大的红皮书(许卓群等著,高教版)和清华的绿皮书(严蔚敏等著,清华版)。两书差距不大。红皮书在理论上稍深一些,当然离严格的算法书还差好远。绿皮书更易接受些,而且佩有一本不错的习题集,但我觉得它让学生用伪代码写作业恐怕不见得太好。最好还是把算法都code以后
debug一番,才能锻炼编程能力。

汇编预言和微机原理是两门特烦人的课。你的数学/理论基础再好,也占不到什么便宜。这两门课之间的次序也好比先有鸡还是先有蛋,无论你先学哪门,都会牵扯另一门课里的东西。所以,只能静下来慢慢琢磨。这就是典型的工程课,不需要太多的聪明和顿悟,却需要水滴石穿的渐悟。

有关这两门课的书,电脑书店里不难找到。弄几本最新的,对照着看吧。

模拟电路这东东,如今不仅计算机系学生搞不定,电子系学生也多半害怕。如果你真想软硬件通吃,那么建议你先看看邱关源的"电路原理",也许此后再看模拟电路底气会足些。

教材:康华光的"电子技术基础"还是不错的。有兴趣也可以参考童诗白的书。

数字电路比模拟电路要好懂得多。阎石的书也算一本好教材,遗憾的一点是集成电路讲少了些。真有兴趣,到东南无线电系去旁听他们的课。

计算机系统结构该怎么教,国际上还在争论。国内能找到的较好教材为Stallings的"Computer Organization and
Architecture:Designing for Performance"(清华影印本)。国际上最流行的则是"Computer
architecture: a quantitative approach", by Patterson & Hennessy。

操作系统可以随便选用Tanenbaum的"Operating System Design and
Implementation"和"Modern Operating System" 两书之一。这两部都可以算经典,唯一缺点
就是理论上不够严格。不过这领域属于Hardcore System, 所以在理论上马虎一点也情有可原。

如果先把形式语言学好了,则编译原理中的前端我看只要学四个算法:最容易实现的递归下降;最好的自顶向下算法LL(k);最好的自底向上算法LR(k);LR(1)的简化SLR(也许还有另一简化LALR?)。后端完全属于工程性质,自然又是another
story。


推荐教材: Aho等人的著名的Dragon Book: "Compilers: Principles, Techniques and
Tools". 或者Appel的"Modern Compiler Implementation in C".

学数据库的第一意义是告诉你,会用VFP编程不等于懂数据库。(这世界上自以为懂数据库的人太多了!)数据库设计既是科学又是艺术,数据库实现则是典型的工程。

所以从某种意义上讲,数据库是最典型的一门计算机课--理工结合,互相渗透。

推荐教材:Silberschatz, et al., "Database System Concepts".
网络的标准教材还是来自Tanenbaum:"Computer Networks"(清华影印本)。不过,网络也属于Hardcore
System,所以光看书是不够的。建议多读RFC,从IP的读起。等到能掌握10种左右常用协议,就没有几个人敢小看你了。

必须结束这篇"胡侃"了,再侃下去非我力所能及。其实计算机还有很多基础课都值得一侃,如程序设计语言原理,图形图像处理,人工智能等等。怎奈我造诣有限,不敢再让内行耻笑。

最后声明:前后的两篇"胡侃"只针对本科阶段的学习。即使把这些全弄通了,前面的路还长......

理论计算机科学漫谈


早就答应russel的,今天有点时间,把欠债还上。

计算机科学和数学的关系有点奇怪。二三十年以前,计算机科学基本上还是数学的一个分支。而现在,计算机科学拥有广泛的研究领域和众多的研究人员,在很多方面反过来推动数学发展,从某种意义上可以说是孩子长得比妈妈还高了。

但不管怎么样,这个孩子身上始终流着母亲的血液。这血液是the mathematical underpinning of computer
science(计算机科学的数学基础),-- 也就是理论计算机科学。

现代计算机科学和数学的另一个交叉是计算数学/数值分析/科学计算,传统上不包含在理论计算机科学以内。所以本文对计算数学全部予以忽略。

最常和理论计算机科学放在一起的一个词是什么? 答:离散数学。这两者的关系是如此密切,以至于它们在不少场合下成为同义词。

传统上,数学是以分析为中心的。数学系的同学要学习三四个学期的数学分析,然后是复变,实变,泛函等等。实变和泛函被很多人认为是现代数学的入门。在物理,化学,工程上应用的,也以分析为主。

随着计算机科学的出现,一些以前不太受到重视的数学分支突然重要起来。人们发现,这些分支处理的数学对象与传统的分析有明显的区别:分析研究的对象是连续的,因而微分,积分成为基本的运算;而这些分支研究的对象是离散的,因而很少有机会进行此类的计算。人们从而称这些分支为"离散数学"。"离散数学"的名字越来越响亮,最后导致以分析为中心的传统数学分支被相对称为"连续数学"。

离散数学经过几十年发展,基本上稳定下来。一般认为,离散数学包含以下学科:
1) 集合论,数理逻辑与元数学。这是整个数学的基础,也是计算机科学的基础。
2) 图论,算法图论;组合数学,组合算法。计算机科学,尤其是理论计算机科学的核心是算法,而大量的算法建立在图和组合的基础上
3) 抽象代数。代数是无所不在的,本来在数学中就非常重要。在计算机科学中,人们惊讶地发现代数竟然有如此之多的应用。

但是,理论计算机科学仅仅就是在数学的上面加上"离散"的帽子这么简单吗?一直到大约十几年前,终于有一位大师告诉我们:不是。

D.E.Knuth(他有多伟大,我想不用我废话了)在Stanford开设了一门全新的课程Concrete Mathematics。
Concrete这个词在这里有两层含义:

第一,针对abstract而言。Knuth认为,传统数学研究的对象过于抽象,导致对具体的问题关心不够。他抱怨说,在研究中他需要的数学往往并不存在,所以他只能自己去创造一些数学。为了直接面向应用的需要,他要提倡"具体"的数学。

在这里我做一点简单的解释。例如在集合论中,数学家关心的都是最根本的问题--公理系统的各种性质之类。而一些具体集合的性质,各种常见集合,关系,映射都是什么样的,数学家觉得并不重要。然而,在计算机科学中应用的,恰恰就是这些具体的东西。Knuth能够首先看到这一点,不愧为当世计算机第一人。

第二,Concrete是Continuous(连续)加上discrete (离散)。不管连续数学还是离散数学,都是有用的数学!

前面主要是从数学角度来看的。从计算机角度来看,理论计算机科学目前主要的研究领域包括:可计算性理论,算法设计与复杂性分析,密码学与信息安全,分布式计算理论,并行计算理论,网络理论,生物信息计算,计算几何学,程序语言理论等等。这些领域互相交叉,而且新的课题在不断提出,所以很难理出一个头绪来。下面随便举一些例子。

由于应用需求的推动,密码学现在成为研究的热点。密码学建立在数论(尤其是计算数论),代数,信息论,概率论和随机过程的基础上,有时也用到图论和组合学等。

很多人以为密码学就是加密解密,而加密就是用一个函数把数据打乱。这就大错特错了。现代密码学至少包含以下层次的内容:

第一,密码学的基础。例如,分解一个大数真的很困难吗?能否有一般的工具证明协议正确?
第二,密码学的基本课题。例如,比以前更好的单向函数,签名协议等。
第三,密码学的高级问题。例如,零知识证明的长度,秘密分享的方法。
第四,密码学的新应用。例如,数字现金,叛徒追踪等。

在分布式系统中,也有很多重要的理论问题。例如,进程之间的同步,互斥协议。一个经典的结果是:在通信信道不可靠时,没有确定型算法能实现进程间协同。所以,改进TCP三次握手几乎没有意义。例如时序问题。常用的一种序是因果序,但因果序直到不久前才有一个理论上的结果....

例如,死锁没有实用的方法能完美地对付。

例如,......

关于死锁 Re: 理论计算机科学漫谈(6)


我简单地觉得与"熵"这个东西有关.
没有这么复杂。关键在效率:对付死锁的方法,例如死锁检测,都非常严重地减低效率,以至于得不尝失,因为死锁并不是一种经常出现的现象。所以在全局上,一般都用所谓"鸵鸟算法",也就是假装什么都不会发生。在局部上,例如你要设计一个访问共享数据的算法,那么你就要证明你的算法在局部上是deadlock
free。至于它会不会导致全局的死锁,就烦不了许多了。

2006/12/02

科学家:四条黄金忠告

【文摘】科学家:四条黄金忠告 [梳枝/译,原文wxy466提供] [不爱吱声] 于:2004-02-02 08:51:07
科学家:四条黄金忠告 [梳枝/译,原文wxy466提供]

Steven Weinberg 现在得克萨斯大学物理系。本文以他 2003年6月在麦克基尔大学科学大会上的讲话为基础。

    当我得到大学学位的时候 - 那是百八十年前的事了
-物理文献在我眼里就象一个未经探索的汪洋大海,我必须在勘测了它的每一个部分之后才能开始自己的研究。做任何事情之前怎么能不先了解所有已经做过了的工作呢?万幸的是,在我做研究生的第一年,我碰到了一些资深的物理学家,他们不顾我忧心忡忡的反对,坚持我应该开始进行研究,而在研究的过程中学习所需的东西。这可是生死悠关的事。我惊讶地发现他们的意见是可行的。我设法很快就拿到了一个博士学位
-虽然我拿到博士学位时对物理学还几乎是一无所知。不过,我的确得到了一个很大的教益:没有人了解所有的知识,你也不必。

    另一个忠告就是,如果继续用我的海洋学的比喻的话,当你在大海中搏击而不是沉没时,应该到波涛汹涌的地方去。19世纪60年代末,我在麻省理工大学教书时,一个学生找我说,他想去做广义相对论领域的研究,而不愿意做我所在的领域-基本粒子物理学-方向的研究,原因是前者的原理已经很清楚,而后者在他看来则是一团乱麻。而在我看来这正是做相反决定的绝好理由。粒子物理学是一个还可以做创造性工作的领域。它在那个时候的确是乱麻一团,但是,从那时起,许多理论物理学家、试验物理学家的工作把这团乱麻梳理出来,将所有的(嗯,几乎所有的)知识纳入一个叫做标准模型的美丽的理论之中。我的忠告是:到混乱的地方去,那里才是行动所在的地方。

    我的第三个忠告可能是最难被接受的。这就是要原谅自己虚掷时光。要求学生们解决的问题都是教授们知道可以得到解决的问题(除非教授非常地残酷)。而且,这些问题在科学上是否重要是无关紧要的,-必须解决他们以通过考试。但是在现实生活中,知道哪些问题重要是非常困难的,而且在历史某一特定时刻你根本无从知道某个问题是否有解。二十世纪初,几个重要的物理学家,包括
Lorentz 和 Abraham,
想创立一种电子理论。部分原因是为了理解为什么探测地球相对以太运动的所有尝试都失败了。我们现在知道,他们研究的问题不对。在当时,没有人能够创立一个成功的电子理论,因为量子力学尚未发现。需要到1905年,天才的爱因斯坦认识到正确的问题是运动在时间空间测量上的效应。沿着这条路线,他创立了相对论。因为你总也不能肯定哪个才是要研究的正确问题,你在实验室里,在书桌前的大部分时间是会虚掷的。如果你想要有创制性,你就必须习惯于大量时间不是创造性的,习惯于在科学知识的海洋上停滞不前。

    最后,学一点科学史,起码你所研究的学科的历史。至少学习科学史可能在你自己的科学研究中有点用。比如,科学家会不时因相信从培根到库恩、玻普这些哲学家所提出的过分简化的科学模型而受到桎梏。科学史的知识是科学哲学的最好解毒剂。

    更重要的是,科学史的知识可以使你觉得自己的工作更有意义。作为一个科学家,你很可能不会太富裕,你的朋友和亲人可能也不理解你正在做的事情。而如果你研究的是象基本粒子物理学这样的领域,你甚至没有是在从事一种马上就有用的工作所带来的满足。但是,认识到你进行的科学工作是历史的一部分则可以给你带来极大的满足。

    看看100年前,1903年。谁是1903年大英帝国的首相、谁是1903年美利坚合众国的总统在现在看来有多重要呢?真正凸现出重要性的是
1903年Ernest Rutherford 和Frederick Soddy 在McGill
大学揭示了放射性的本质。这一工作(当然!)有实际的应用,但更加重要的是其文化含义。对放射性的理解使物理学家能够解释为什么几百万年以后太阳和地心仍是滚烫的。这样,就清除了许多地质学家和古生物学家认为地球和太阳存在了很长年代的最后一个科学上的障碍。从此以后,基督教徒和犹太教徒就不得不或者放弃圣经的直接真理性或者放弃理性。这只是从加利略到牛顿、达尔文,直到现在削弱宗教教条主义桎梏的一系列步伐中的一步。只要读读今天的任何一张报纸,你都会知道这一工作还没有完成。但是,这是一个文明化的工作,对这一工作科学家是可以感到骄傲的。

-------------------------------------------------
原文:

Nature 426, 389 (27 November 2003); doi:10.1038/426389a


  Scientist: Four golden lessons

  STEVEN WEINBERG

  Steven Weinberg is in the Department of Physics, the University of
Texas at Austin, Texas 78712, USA. This essay is based on a
commencement talk given by the author at the Science Convocation at
McGill University in June 2003.

  When I received my undergraduate degree ?D about a hundred years ago
?D the physics literature seemed to me a vast, unexplored ocean, every
part of which I had to chart before beginning any research of my own.
How could I do anything without knowing everything that had already
been done? Fortunately, in my first year of graduate school, I had the
good luck to fall into the hands of senior physicists who insisted,
over my anxious objections, that I must start doing research, and pick
up what I needed to know as I went along. It was sink or swim. To my
surprise, I found that this works. I managed to get a quick PhD ?D
though when I got it I knew almost nothing about physics. But I did
learn one big thing: that no one knows everything, and you don't have
to.

  Another lesson to be learned, to continue using my oceanographic
metaphor, is that while you are swimming and not sinking you should
aim for rough water. When I was teaching at the Massachusetts
Institute of Technology in the late 1960s, a student told me that he
wanted to go into general relativity rather than the area I was
working on, elementary particle physics, because the principles of the
former were well known, while the latter seemed like a mess to him. It
struck me that he had just given a perfectly good reason for doing the
opposite. Particle physics was an area where creative work could still
be done. It really was a mess in the 1960s, but since that time the
work of many theoretical and experimental physicists has been able to
sort it out, and put everything (well, almost everything) together in
a beautiful theory known as the standard model. My advice is to go for
the messes ?D that's where the action is.

  My third piece of advice is probably the hardest to take. It is to
forgive yourself for wasting time. Students are only asked to solve
problems that their professors (unless unusually cruel) know to be
solvable. In addition, it doesn't matter if the problems are
scientifically important ?D they have to be solved to pass the course.
But in the real world, it's very hard to know which problems are
important, and you never know whether at a given moment in history a
problem is solvable. At the beginning of the twentieth century,
several leading physicists, including Lorentz and Abraham, were trying
to work out a theory of the electron. This was partly in order to
understand why all attempts to detect effects of Earth's motion
through the ether had failed. We now know that they were working on
the wrong problem. At that time, no one could have developed a
successful theory of the electron, because quantum mechanics had not
yet been discovered. It took the genius of Albert Einstein in 1905 to
realize that the right problem on which to work was the effect of
motion on measurements of space and time. This led him to the special
theory of relativity. As you will never be sure which are the right
problems to work on, most of the time that you spend in the laboratory
or at your desk will be wasted. If you want to be creative, then you
will have to get used to spending most of your time not being
creative, to being becalmed on the ocean of scientific knowledge.

  Finally, learn something about the history of science, or at a
minimum the history of your own branch of science. The least important
reason for this is that the history may actually be of some use to you
in your own scientific work. For instance, now and then scientists are
hampered by believing one of the over-simplified models of science
that have been proposed by philosophers from Francis Bacon to Thomas
Kuhn and Karl Popper. The best antidote to the philosophy of science
is a knowledge of the history of science.

  More importantly, the history of science can make your work seem
more worthwhile to you. As a scientist, you're probably not going to
get rich. Your friends and relatives probably won't understand what
you're doing. And if you work in a field like elementary particle
physics, you won't even have the satisfaction of doing something that
is immediately useful. But you can get great satisfaction by
recognizing that your work in science is a part of history.

  Look back 100 years, to 1903. How important is it now who was Prime
Minister of Great Britain in 1903, or President of the United States?
What stands out as really important is that at McGill University,
Ernest Rutherford and Frederick Soddy were working out the nature of
radioactivity. This work (of course!) had practical applications, but
much more important were its cultural implications. The understanding
of radioactivity allowed physicists to explain how the Sun and Earth's
cores could still be hot after millions of years. In this way, it
removed the last scientific objection to what many geologists and
paleontologists thought was the great age of the Earth and the Sun.
After this, Christians and Jews either had to give up belief in the
literal truth of the Bible or resign themselves to intellectual
irrelevance. This was just one step in a sequence of steps from
Galileo through Newton and Darwin to the present that, time after
time, has weakened the hold of religious dogmatism. Reading any
newspaper nowadays is enough to show you that this work is not yet
complete. But it is civilizing work, of which scientists are able to
feel proud.


从如下两帖转的,
http://www2.tianyaclub.com/New/PublicForum/Content.asp?idWriter=0&Key=0&strItem=free&idArticle=127401&flag=1

http://www2.tianyaclub.com/new/Publicforum/Content.asp?idWriter=0&Key=0&strItem=no01&idArticle=79339&flag=1

梳枝在"关天茶舍",从上面的第二个连接可以找到她。她的个人信息可见
http://www2.tianyaclub.com/browse/Listwriter.asp?vwriter=梳枝

用email发布Blog

还不错

--
Jie Bao

令狐葱的BlogSpot: 通过电子邮件发布日志

通过电子邮件发布日志

具 体的方法是:登陆你的Blogger帐号,进入控制面板,更改设置,在“电子邮件”中,在Mail-to-Blogger地址中可以自定义一个邮件地址, 发送到此地址的邮件会自动post到你的blog,BlogSend地址是另外一个电子邮件地址,只要一发布文章,系统会将其邮寄文章到此地址。
   另外,在更新Blogger时你也可以同时更新MSN Space。因为MSN Space也是支持邮件发布的,因此将Blogger发布后发送邮件的BlogSend地址修改为MSN Space的发布邮件地址,这样在Blogger上发布一篇文章后,系统就会自动将文章内容发送到Msn Spaces里,这样就同时更新了两个博客。
   值得注意的是,Blogger默认的编码是UTF-8编码,因此发送邮件的时候要将邮件编码设置为UTF-8的格式,建议登陆GMail发送邮件。一来 GMail默认就是UTF-8格式的,编码全兼容,二来GMail支持自动保存功能,不怕电脑死机后丢失文章,三来GMail还可以自动备份发出去的文 章,以免文章丢失。

全球旗??? GLOBALFLAG

2005/10/26

WW501MitraP.pdf (application/pdf Object)Privacy-preserving Ontology Matching

A methodology for hiding knowledge in databases

NSPW-2001.pdf (application/pdf Object)

Ontology in Information Security: A Useful Theoretical
Foundation and Methodological Tool

cui.pdf (application/pdf Object)

2005/10/25

CSA: "Hierarchical selection in modular organisms.
Tuomi, J; Vuorisalo, T
Trends in Ecology & Evolution [TRENDS ECOL. EVOL.]. Vol. 4, no. 7, pp. 209-213. 1989. "

The Modular Structure of Complex Systems
DL Parnas, PC Clements, DM Weiss - TSE, 1985 - portal.acm.org

2005/09/20

2005/08/24

清帝王史话(1)_读书频道_新浪网

2004/02/11

据说,一个公司就如同一棵树上的一群猴子。往上看全是TMD assholes,
往下看全是一张张微笑的脸。

如果你想多看笑脸,少看PP,你必须爬得更高

2004/01/22

巴巴爸爸 巴巴妈妈 巴巴祖 巴巴拉拉 巴巴利波 巴巴伯 巴巴贝尔 巴巴布莱特 巴巴布拉伯

可里可里可里可里,巴巴变!!

巴巴爸爸 巴巴妈妈 巴巴祖 巴巴拉拉 巴巴利波 巴巴伯 巴巴贝尔 巴巴布莱特 巴巴布拉伯

可里可里可里可里,巴巴变!!

巴巴爸爸 巴巴妈妈 巴巴祖 巴巴拉拉 巴巴利波 巴巴伯 巴巴贝尔 巴巴布莱特 巴巴布拉伯

可里可里可里可里,巴巴变!!

2004/01/17

http://www.086net.com/Blogger/index_detail.php?p=323&more=1&c=1

所有的手机都有一个唯一的序列号,当你键入* # 0 6 # 时,你手机的屏幕上就会出现一个15位的数字,这个数字就是你的手机的序列号。请把此号码记下来并保存好,当你的手机被盗后,你可以将此号码提供给你的服务商,他能将你丢失的手机锁住,即使别人将你原有的SIM卡换掉,此手机也不能使用。也许你不会失而复得,但是你的手机对他们来讲也是没有任何价值,除非将它作为纸镇。如果每个人都能够知道自己手机的唯一的序列号,那么盗窃手机将变得没有任何意义。将这个信息告诉尽可能的人,这个常识普及了,大家丢手机的机会就少了!

2003/12/16

Free Online Dictionary and Thesaurus

2003/12/02

准备把所有的在线资源, 主页, 留言板, blog 都用ontology-based wiki整理一遍