星期三, 十月 25, 2006

“五四新文化”:现代酷语的星星之火

朱大可

现代国家主义和流氓主义拥有一个共同的话语源头。辨认这个源头的工作,已在中国知识界热切地展开,并形成重释、改写和翻案的细小潮流。而我们对20世纪酷语的认知,也应当从那个不同寻常的时刻开始。

已有不少学者指出,所谓“五四新文化运动”,不过是两场截然不同又互相关联的运动——新文化运动(1915年)和五四爱国运动(1919年)的戏剧性组合而已。由陈独秀、胡适和李大钊等人发起的新文化运动,不是文艺复兴历史的返回和重构,而是以西方为参照尺度、以历史进步为诉求的意识形态革命,企图对中国传统文化进行彻底清算。它起初是一场单纯的语言学手术,也就是白话对文言的话语颠覆,而最终则演变成激进的文化革命风暴。陈独秀在《新青年》创刊词中宣称,世界各国“遵循共同原则之精神,渐趋一致。潮流所及,莫之能违。”这显示新文化运动是一场以民族的自我批判为逻辑前提的全球化运动,它遵循的是文明的开放、趋同和人类的公共性原则。

冯崇义指出:“以陈独秀、蔡元培、胡适、鲁迅、李大钊等人为代表的五四启蒙思想家,一度不约而同地倾其全力投身启蒙运动,试图移植现代西方的自由民主价值和科学理性来取代传统中国的儒家等级专制理念和迷信盲从心理。”究其原因,就在于当时“先进的中国人曾一度痴迷地追求西方主流文明。他们明白无误地将民国初年军阀武人对民主政治的成功颠覆归因于半心半意的现代化,认定如果没有彻底颠覆以儒家等级尊卑观念为核心、而不给个人的独立和自由留下合理空间的中国传统国家意识形态、如果没有建立与西方一样的那种以自由平等观念为核心的现代伦理,民主政治便没有赖以依存的文化支撑。”

与新文化运动截然不同,五四运动是一场由青年民粹主义者发起的民族自卫运动。这种爱国主义情绪和知识分子的改革愿望,早在19世纪末已经逐步显现。 1915年1月签订的“21条”,触发了中国民众严重的屈辱感,并酝酿出海外留学生的爱国激情。1918年1月凡尔赛秘密协定内幕,由英国记者驻北平记者莫理循在《泰晤士报》上曝光,中国民众惊讶地发现,德国在山东的权益,被政府无耻地转让给了日本,此举再度激怒了爱国青年,并成为点燃五四运动的话语导索。

显然,五四运动最初是捍卫国家主权的爱国行为,而后则在俄国革命和巴黎和会的双重影响下,演变成了更加广泛而汹涌的民族主义思潮。 它遵循的是自卫、收缩、排外和民族主体性原则。这种旧的保守原则,在五四中获得了一个新的面貌,为日后的文化孤立主义开辟了道路。

在国家严重积弱的时局中,深受西方自由主义熏陶的留学知识分子,甚至羞于谈论个人解放和自由的议题,而是被卷入了强大的民族主义的集体无意识运动之中。他们的价值只有响应本土的集体召唤后才能获得认同。这种强大的态势压抑了西方自由主义在中国本土的健康生长,并把绝大多数知识分子推向了激进民族主义的道德前线。

上述两场方向和性质截然不同的运动,长期以来遭到主流历史学家的严重混淆,并且总是用“五四运动”来取代新文化运动,从而把后者长期幽灵化,使之变成五四运动的一个细弱的精神附庸。近年来中国知识界对新文化运动的重审,无疑有助于从历史中发现它的“原教旨”语义。

然而,知识界在为这两场运动划清界限的同时,无疑又犯了一个新的技术错误。新文化运动和五四运动,实际上是左手和右手的关系,左右手固然要加以区别,但它仍然是同一躯干上长出的东西,与其说是左右互搏,不如说是左右互补。它们的亲昵关系到了1920年代初就已经昭然若揭。陈独秀和李大钊最初跨骑在两个运动之间——一半属于五四运动,而另一半属于新文化运动,而后,由于他们的个人努力,这两场运动发生了戏剧性的汇合,进而演变为激进的政治革命,并从这同一个母体中裂变出了国家主义和流氓主义两大思潮。

五四事件的身体酷语

不妨先回顾一下1919年5月4日当天的故事。为了抗议中国政府向德国和日本出卖山东地区的主权,清华大学部分学生先是在校园内密谋策划暗杀和暴动,继而又组织三千多名学生上街游行示威。示威者经过天安门广场和东交民巷使馆区,冲进交通总长兼财政总长曹汝霖的官邸“赵家楼”,对政府高级官员实施强制性抄家,同时殴打了他的父亲与妻子、以及在他家做客的驻日公使章宗祥,据一名当事人回忆道,若无日本保镖护驾,章将被痛殴而死。最后,学生们在纵火焚烧汽车与曹的住宅之后扬长而去。这就是五四运动或“火烧赵家楼”的简要过程。

然而,这场以“身体酷语”为特征的群众性暴力运动,经过“爱国主义”反复题写之后,便在伦理上升华为“革命”的正义模式,并被推崇为中国新文化和现代化的伟大里程碑。自此,一切经过多数人“正义”题写的“暴权”(使用暴力的权力),经过“革命”的包装,都拥有了充分的道德合理性。这令五四爱国运动成为国家主义的混合摇篮,以及整个20世纪激进运动处理一切“革命事务”的话语样板。

社会转型期间涌现的激进主义是难以避免的,但大规模滥用后所形成的“多数人暴政”,却是人民民主运动的一个可疑后果。从雅各宾俱乐部到罗伯斯庇尔的极权主义独裁,法国自由主义革命和人民民主运动,最终却酿造了近代第一个高效率的独裁国家。为了维护所谓大多数人的利益,新政权必须制订严厉的公共安全政策,并从肉体上清洗掉一切可能的反对者。

法国革命的多数人的暴力激进主义,在东方触发了多米诺骨牌效应,《马赛曲》出现了一个全新版本,由英国工人所谱写,并且点燃了俄国水兵的愤怒的炮火。 1917年革命爆发,沙皇全家遭到集体消灭,大批贵族、地主、富农和平民被枪决,而由布尔什维克领导的“红色叙事”,则成了一场富有全球启示性的话语演示。

在苏联之后,中国成了该骨牌在亚洲的最大环节。俄国革命是五四爱国运动的一个成功样板,它向中国人出租了酷语的近代语法和革命程序。面对严厉的旧制度所导致的“人民苦难”以及现代性的需要,革命的暴力话语――酷语,获得了道德上的高度合理性,并被迅速转换成北平“青年近卫军”的犀利武器。它烧过边境,点燃了中国式憎恨的燎原烈火。

毫无疑问,“五四爱国运动”是一个含义复杂的事件,它的正义性、进步性、文化破坏性及其对后世的影响,至今难以一言蔽之。基于某种意识形态禁忌,对它的正确估量始终未能真正达成。但我们已经看到,尽管其暴力指数难与俄国革命相提并论,但酷语的摧毁力在当时就已经昭然若揭。广场(天安门)、民众(学生)集体动员、上街游行示威、口号和呼喊、叫骂和拳头、穷人对贵族(地主富农和资本家)的抄家及纵火,所有这些现代史的流氓叙事元素,在五四运动里大都已经涌现,并且迅速转换成具有“中国特色”的酷语模式。它既是“流氓叙事”的源泉,也是“国家叙事”的根基。此后,在蒋介石国民政府在内的历次政权及其政治运动中,这种“酷语”在不断闪现和自我重写,为每个重大政治事件提供话语模本。

暴力的手术刀效应,沉重打击了旧时代的脸庞,令它的结构迅速崩解(这是人们通常所说的“必要的暴力”),从而迅速推进了社会的变革,但另一方面,酷语的负面作用,也在顽强地浮现了出来。暴力并未被限定在军事打击的范围内,而是被严重扩大,发展为政治斗争、尤其是“革命队伍内部之争”的基本模式。这意味着,以“革命”命名的酷语,已经深入到所有与心灵有关的对抗之中。这是所有社会危机中最危险的一种,因为它预设了反人性程序的全部合理性。

“无产阶级文化大革命”是一个最真切的例证,这场运动之所以在全世界“史无前例”,就是因为它通过民众总动员建立多数人的酷语暴政,运用肉体摧残、人格羞辱、精神隔离、彼此检举、家庭监狱、自我反省(“斗私批修”)等各种暴力技巧,去粉碎一切不符合国家主义标准的人性、精神与历史,以重塑“新人”和乌托邦信念。这是人类史上最极端的思想暴力之一,它的直接后果就是中国在20世纪下半叶的道德瓦解、心灵崩溃、信仰伪化、文艺阳痿和文化的全面溃退。我们至今仍然置身于这场酷语大爆炸的严重后果之中。(摘自《流氓的盛宴——当代中国的话语转型》)

星期二, 十月 24, 2006

腐败的境界(童大焕)

腐败的境界(童大焕)

● 童大焕

  2003年年末的最后几天里,我一直在纳闷,伊拉克的“民族英雄”、“反美斗士”、前总统萨达姆先生怎么那么快就对“美国鬼子”承认了自己在世界各国的银行里有400多亿美元的私产呢?他落入美军之手也不过半个月时间吧。 ( http://www.tecn.cn )

  这富可敌国的私人财富搜括自伊拉克的民脂民膏是毫无疑问的。但是作为伊拉克的天下都是他萨达姆的天下的小国之君,普天之下莫非王土,率土之兵,莫非王臣,他萨达姆先生又有什么不安心的,还要挖空心思地干一些卖国的勾当,将国有资产窃为己有,并且对着国人瞒天过海,将其悄悄转移国外呢? ( http://www.tecn.cn )

  虽然萨达姆在美国人面前嘴硬,说如果允许他回去参加总统选举,他还是一如既往地(100%)当选总统,云云。但此间普遍的国际舆论都认为,如果萨达姆交由伊拉克人来审判,则必死无疑。看来不管萨达姆怎样地在国内推行高压统治,人们的服从也并不是发自内心的。因此,萨达姆不惜卖国转移资产以给自己留后路,其实也算是颇有“自知之明”了。 ( http://www.tecn.cn )这么一来,我就想到了一个“腐败的层次”或曰“腐败的境界”问题。余光中有一散文名篇,叫做《借钱的境界》,其中的“最高境界”是“简直有一点天人之际的意味。善借者不是向私人,而是向国家借。借的藉口不再是一根胡萝卜,而是好几根烟囱。借的对象不再是一个人,而是千百万人。债主的人数等于人口的总数,反而不像欠任何人的钱了。至于怎么还法,甚至要不要还,岂是胡萝卜的境界所能了解的。此之谓‘大借若还’。” ( http://www.tecn.cn )

  同样的,腐败的第一境界与此有异曲同工之妙。腐败的借口可以是国家形象,可以是国家安全,也可以是为了什么什么高尚的目的,腐败的结果可以是无数的人当炮灰或饿殍,但都没有人说谁腐败,反而要感恩戴德地说,若没有大救星人民将要水深火热。 ( http://www.tecn.cn )

  这么说可能还不够清晰。因为上面这种腐败的特征第二第三境界里也有。第一境界的腐败确切地说是政治腐败经济腐败和文化腐败的高度合一,是物质控制和精神控制两根绳子合力拧成一股绞索将人的身体和精神双重捆绑,是政治资源高度垄断了经济资源和文化资源。通过政治控制人的一切生存条件,达到控制人的精神和意志的境界。社会没有政治自由,没有经济自由,也没有文化自由,除了表态文化,就是告密文化和恳求文化。这种腐败一定要伴随着计划经济来进行,即使暂时的计划也好,像希特勒他们的战时共产主义。通过物质的控制进而全面控制人的精神,颇有点邪什么什么的意味。现在的邪什么什么是过街老鼠,但20世纪中叶在不少国家里是国家行为,现在世界上只有少数几个小国寡民的“流氓政权”国度里还在苟延残喘。 ( http://www.tecn.cn )

  在这个境界里,腐败是以特权的方式存在着的。但那是为了“国家的需要”。可以专门建一个工厂为国家元首一个人生产雪茄,建N个工厂集中一切专家智慧不惜一切代价专门为一个人生产“主席用瓷”。你说他生活俭朴与百姓同甘苦不吃红烧肉吃的是芋头,但你也许不知那芋头却是千里迢迢派人专送的“荔浦芋头”,当年刘罗锅就说那芋头从广西专送到京城,一个芋头就值一锭银子!“一骑红尘妃子笑,无人知是荔枝来”,几颗荔枝,从福建到西安,三天内不到就坏了,知道中间要死多少马匹,耗多少银两? ( http://www.tecn.cn )

  这些都是小儿科。一个人撑死了也是一张床一张嘴。最可怕的是可以不经法律程序随意剥夺个人的财产和生命;领袖说为了民族的生存,必须实行侵略扩张主义,于是整个德国陷入万劫不复的深渊;领袖自己没有安全感每一个别墅都要修富丽堂皇的地宫,于是号召全民族都修地道或者防空洞,或者两三百万人口的国家修一百五十万座地堡――这些钱比一般的经济腐败如何?它们可全都是肉包子打狗――有去无回,耗尽了国力民财破坏了山川河流最后是国在山河破;领袖要是发扬一下革命的浪漫主义精神,来他一两个大跃进文革什么的,接踵而至的可能就是几千万饿殍……   ( http://www.tecn.cn )

  第二境界的腐败是经济获得了相对的自由,社会采取了市场经济的价值取向,但政治自由文化自由仍然不足,政府仍然通过行政审批和直接控制等手段控制着社会的绝大部分资源。于是,权贵资本主义盛行,“腐败型投资”和“审批型信息型腐败”成为这种腐败的最主要特征。“审批型信息型腐败”就是审批经济导致一大批信息官倒,所谓“腐败型投资”就是利用公共资源为官僚个人或小集团谋私利,为了个人升迁或捞取私利,这种投资往往极其慷慨,动辄让地方百姓和地方财政背上几十年债务而在所不惜,烂摊子留给后人,自己却异地升官发财。这就是我们通常说的“形象工程”、“政绩工程”,如最近刚刚披露的深圳四大工程腐败即是。每个工程都在亿、十几亿以上人民币。投资的理由冠冕堂皇,但真实的意图无一例外是官僚个人或小集团利益。这种腐败点多,面广,其危害比官僚个人的贪污受贿严重得多。这种腐败除了捞取升官的“政绩资本”以外,绝大多数都还兼带着直接的从工程中捞取经济利益。要想富,先修路;要想富,动干部;要想富,政绩工程别止步。 ( http://www.tecn.cn )

  要命的是,只要钱没有进入私人口袋,政绩工程形象工程的始作俑者一般不会受到任何党纪政纪处分,反而是异地升官节节高。但是这种危害,比起个人的贪污受贿来说,不知要大几百倍。 ( http://www.tecn.cn )

  第三境界的腐败就是一般的贪污受贿生活作风等问题。不必多写。这种腐败危害最轻,也最容易被发现,最容易成为众矢之的。所谓窃钩者诛窃国者侯,腐败也是层次越高越受到人们拥护,被腐败者耍了还帮着他们数钱。所以说腐败也有境界之别呢。  ( http://www.tecn.cn )

  孟德斯鳩在论罗马的兴衰时大意说过,当腐败和特权只局限于一个王族时,一切都还有救;但当腐败遍及每一级官僚时,一切便都无可挽回。这话有一定道理。但当我们从现实的历史来考察,就会发现,单纯的“王家的天下”并不比“众官僚的天下”腐败更轻,一个人的形象工程政绩工程,危害也丝毫不比无数人的形象工程政绩工程轻。倒是像希特勒式的腐败境界最高,最深得当时民众的拥护,危害也最大。而在人类历史上,萨达姆式的腐败,充其量在第一、第二境界之间。 ( http://www.tecn.cn )

  所以一国之腐败,首推政治腐败,其次是政治腐败和经济腐败的结合,再次才是经济腐败。所以当我看到网络上有“毛时代为什么没有腐败”的伪命题时,我只感到莫名的悲哀。 ( http://www.tecn.cn )

星期一, 十月 23, 2006

Advice to Authors of Extended Abstracts

William Pugh

Dept. of Computer Science and Institute for Advanced Computer Studies

Univ. of Maryland, College Park

This article stems from discussions among the program committee for SIGPLAN'91 PLDI. The program committee thought it might be useful to put together some advice for authors. To give some context to these suggestions, I've also provided a brief description of the process by which the conference papers were reviewed, partially from my perspective. This process is similar to the way most SIGPLAN conferences are run, although the details differ for each conference.

How the Papers Were Reviewed:

There were 169 extended abstracts submitted to the SIGPLAN '91 PLDI conference. At the request of the program committee chair, program committee members (and their graduate students) refrained from submitting any abstracts to the conference. This allowed us to avoid having to deal with direct conflict of interests.

Each program committee member was assigned 60 abstracts, based on his or her areas of expertise. Since all abstracts were sent to all committee members, members could review any abstracts they wished, so long as they reviewed at least the abstracts assigned to them. Program committee members could review the abstracts themselves or have others review them, although in most cases the program committee members at least briefly reviewed all the abstracts they were assigned, even if they had colleagues review some of them in detail for them.

I wasn't able to read any abstracts until after the semester ended in mid-December, and I allowed myself a week off from reading abstracts for Christmas. Thus, I had about four weeks to read the abstracts, and I couldn't spend much more than 20 hours a week reading them (due to limitations both on available time and the amount of reviewing I could do in a day before I suffered burnout). Since I read more abstracts than I was assigned, this came down to an average of one hour per abstract.

In reading an abstract, I had to try to understand the work presented, the significance of it, and possible problems with it. I spent at least 30-40 minutes on almost every abstract, sometimes coming back to an abstract several times. I spent over four hours each on several abstracts. In one case this was because the abstract looked interesting but was badly written; in another case, because the abstract dealt with a dense subject. In several cases, I spent several hours on a paper simply because I had expertise or interest in the topic described by the paper.

The program committee met for two days to discuss the submitted abstracts and choose those to be accepted. A preliminary numerical ranking provided by the reviews received in advance of the meeting helped structure our discussions. On each of several passes through all the submissions, some papers were eliminated from consideration, others were retained for further discussion and some were accepted. Finally, we had a total of 28 accepted papers.

What is an Extended Abstract?

An extended abstract is not simply a long abstract. An extended abstract should contain references, comparisons to related work, proofs of key theorems and other details expected in a research paper but not in an abstract.

An extended abstract is a research paper whose ideas and significance can be understood in less than an hour. Writing an extended abstract can be more demanding than writing a research paper.

Some things that can be omitted from an extended abstract: future work, details of proofs or implementation that should seem plausible to reviewers, ramifications not relevant to the key ideas of the abstract.

Some Issues Considered by the Committee:

  • Are there any major technical flaws in the abstract? In a few rare cases, reviewers found serious technical flaws in a submission.

  • Is the work a significant advance over previous work in the area, by the same authors or others? The abstract should give a clear description of the advantages offered by the new technique over previous techniques. Simply describing an interesting new way of doing something that could be done as simply and efficiently by previous techniques won't get an abstract accepted. The best abstracts gave a clear description of what their results allowed that couldn't be done previously and why that is significant. Examples and measurements are great for this.

    A related problem is not citing relevant work in the area. Don't rely on the program committee realizing that X's work in this area doesn't apply because you are considering a slightly different problem that renders X's methods unusable.

    If you have additional current papers on topics related to your submission (accepted by or submitted to other conferences or journals), be sure to discuss the contribution of your submission over that of your other papers.

  • If the work involves a specialized application, does it make a more general contribution? Some abstracts described interesting specialized applications. Much of the content of these abstracts involved descriptions of the context of the work or applying standard techniques in the new context. In some cases, it was unclear if the resulting paper would be useful to people not interested in the author's specific application.

    If you submit an extended abstract involving a specialized application, be sure the significant contributions of your work don't get lost in the details of your application.

  • Does the abstract offer an interesting perspective on a problem or describe experience that might be useful to others? Several committee members lamented that although several authors had built substantial systems, and tried several approaches to learn which ones worked and which ones didn't, the authors only wrote abstracts about narrow technical results related to their systems. Relevant comments about practical experiences attempting to apply new technologies can significantly increase the value of any paper.

  • Is the abstract well presented and understandable? We didn't reject any abstracts for being poorly presented. However, all other things being equal, the program committee was more enthusiastic about abstracts that were clear and well presented.

  • Is the abstract too long? There are many methods of trying to fit 20 pages of material into the 10 page limit on extended abstracts (reducing margins, using 9-point type on 10-point leading with double columns, etc.) They are all strongly discouraged. The page limit is to encourage authors to write abstracts that can be absorbed quickly, not to save trees, (although our request for double-sided copies of the abstracts did have this as its goal). No abstracts were rejected purely for reasons of length, but none of the accepted abstracts significantly violated the spirit of the 10 page limit; consider this a strong hint.

    Several program committee members stated that after reading 10 pages worth of material, they felt free to stop reading at any point if they were not truly excited by the paper.

    Don't let the page count limit prevent you from providing figures or examples that make the paper easier to understand. The page count limit should be considered an upper bound on the number of full pages of text, exclusive of figures and examples. One program committee member disagreed and thought that the page limit should be strictly adhered to, noting that if a picture is worth 1000 words, a picture is worth more than the 200 words it displaces.

    In exceptional cases, it may be appropriate to put additional material in an appendix that extends past the length limit. This is acceptable only if the extended abstract itself stands on its own without the additional material. Given their time limitations, most reviewers probably will ignore the appendix. Acceptable material for an appendix could include background material for committee members not familiar with the details of the research area and details of proofs and implementations omitted from the body of the abstract.

  • Does the abstract address the obvious questions raised by the research? For example, if an abstract claims to describe ``an efficient, practical algorithm'' for something, it should give empirical timings, asymptotic analysis or both. If the techniques described require solving a problem that is NP-Complete or undecidable in general, the abstract should discuss the difficultly of solving the problem. It may be that in practice the problems that arise in the author's application can be solved efficiently; but if the abstract doesn't discuss it, the program committee doesn't know if the author is even aware of the potential problem.

    The program committee was sympathetic about not expecting data that ought to have been very difficult to collect. However, the committee was disappointed in several instances by abstracts that failed to report data that ought to have been easy to collect and would have answered obvious questions about the work.

Final Comments for Authors:

  • An ideal submission should have a reviewer intrigued within the first 5 minutes of reading, excited within 15 minutes and satisfied within 45 minutes. If your abstract fails any of these tests, it might be rejected no matter how good the research is. Committee members may spend more than 30-45 minutes on your abstract, but you shouldn't rely on it.

    Before you submit an abstract, give it to a programming languages colleague who is not familiar with the details of your research or your research area and ask him or her how much they can get out of it in less than an hour.

  • Don't overlook the importance of the introduction, figures, examples, and conclusions (and measurements if applicable) in an extended abstract.

  • Remember that some program committee members, of necessity, are not experts in your area of research and that when they pick up your abstract they may have already reviewed 8 abstracts that day. Material that may take an expert in your area 5 minutes to go through might take some committee members 20 minutes or more.

  • There are some types of research that are difficult to publish in a conference simply due to the amount of time and effort that would be required for the program committee members to review the abstract properly. If you can't prepare an extended abstract of your work that can be digested and its significance understood in an hour, it may not be possible to accept your paper, no matter how good the described research. For some types of research (particularly research on new topics), it may be impossible to meet this standard, no matter how well you write. This is an unfortunate flaw in the system, and we have no remedy except to suggest that you submit your paper to a journal where more time can be taken to referee it properly.

  • Please remember that we cannot give as much attention to a submission as would be given to a journal submission, and we do make mistakes. If you get back comments that suggest the program committee misunderstood your abstract, you can use that information constructively. If the program committee misunderstood your work, other readers may misunderstand it as well.

  • This note has placed a lot of emphasis on the idea that an extended abstract need to be clearly written and easy to understand. Of course, whenever possible that standard should be applied to full papers as well.

  • For additional advice, read the excellent article by Mark Wegman that inspired this report: ``What it's like to be a POPL referee; or How to write an extended abstract so that it is more likely to be accepted,'' SIGPLAN Notices, Vol. 21, No. 5, May 1986, pages 91-95.

How to Write Journal Paper in Computer Networking

Sean Xiaojun Hei
* Reasons to Publish Journal Paper
* Overview of Journal Paper
* Structure of Journal Paper
* Linguistic Characteristics
o How to Create a Niche in the Introduction
o Tense and Voice
o Reference Citation
* Summary
* References
* About this document ...


Reasons to Publish Journal Paper

With the full emphasis upon research activities, postgraduate students ought to contribute in the research community to fulfill the requirements of the degree program. One of the most important way to contribute is to publish paper in research journals, especially in those best journals with the good reputation in the area. Ideas are cheap [1], and the only thing that counts is action. There are more important reasons than merely meeting the degree requirements in the University [1]. First, the writing process provides us with a chance to sit down and put our ideas and evidence on paper, so it is possible to refine them and even find any flaws in the arguments or methodology because the whole writing process forces us to think though our ideas more carefully and structure them more logically. Second, writing helps us revisit our ideas and theories and look at them again in a fresh, more impartial way, therefore, we have the opportunity to make improvements. Besides, the publishing procedure generally involves a refereeing process, which will probably result in feedback. Because the referee is most likely to be a respected leader in our research area, we have the chance to get free valuable advice on how we can improve our work. Last but not least, by publishing our work, we can boost our self-confidence and we can obtain satisfaction and recognition.

Getting published begins with the desire to do so, swiftly followed by action [1]. The actual research contribution is one of the deterministic factors whether a paper can be accepted by a journal. On the other hand, the published journal papers have their own characteristics in terms of language. In this essay, we aim to study the linguistic aspects when writing a journal paper in computer networking by the case study of six papers about a particular area ``Reliable Multicast'' from one of best journals in the area, IEEE/ACM Transaction on Networking.

Overview of Journal Paper

There are distinctions among a report, a thesis and a paper. A report simply relates facts in neutral fashion, while a thesis definitely seeks to draw conclusions and assert an evaluation of the material [3]. Computer Networking belongs to Engineering field, therefore, a report in the area also tends to provide a conclusion instead of a mere collection of fact. Generally, it presents in a more detailed way and has a much longer text. A thesis is written to convince supervisors that one has really done the work, so text space puts no constraint in the writing as long as it is necessary for the presentation. However, the journal editors care about space and footnotes because they have to cost the printers' bills [3], therefore, a journal paper has more submission requirements. Notes to Authors are the first reference for the journal paper publishing.

There are different types of journals even in the same academic area. Some may focus on theoretical aspects while others may be mainly about the application. In order to get the paper published in journals, targeting journals is the very first step.

In the following sections, with the case study for the papers in IEEE/ACM Transaction on Networking, we try to generalize some characteristics.
Structure of Journal Paper

There is a general movement for papers in IEEE/ACM Transaction on Networking, including the following sections: abstraction, introduction, authors' contribution, conclusion, appendix, acknowledgment, reference, authors' bibliography. Authors' contribution is the major part in the paper. It is likely that authors further divide the contribution section into several more sections, in parallel to introduction, related work, etc.. Even in the same research topic ``reliable multicast'', the writing style are very different. Anyway, the papers are written by different writers, therefore, it is natural to observe the heterogeneity. However, there are still common moves in this section. Normally, the system model is presented first, followed by the theoretical analysis. Then simulation study or the actually system implementation is carried out. Thereafter, the discussion or the comparison goes into the framework. Sometimes, the section of related work shows up in the paper as an individual part, in which the literature review is done. Also, the future work is presented in a separated section with much more details instead of the common brief description in the conclusion section at last. In the rest of this section, the writing for several sections is covered.

How to Create a Niche in the Introduction


There are typically three moves in research paper introductions [1]: establishing a research territory, establishing a niche and occupying the niche. The six papers in this study are of no exceptions. It is interesting to see that most papers create the niche by indicating a gap with the negative opening in a sentence. The connector however is commonly used to fulfill the task.

* ``The use of multiple multicast channel is expected ... However, in practice ... In this paper, we explore...'' [4].
* ``...(literature review)... However, latency is not considered.'' [5].
* ``Very little work was done on the analysis ... We give an analytical foundation ...'' [6].
* ``However, each packet loss will result in ... In this paper, we present two different mechanisms ...'' [7].
* ``FEC by itself cannot provide full reliability. However, when ... In this paper we study the effectiveness ...''[8].
* ``The weakness of ... This paper further evolves the principles ... for Scalable Reliable Multicast (SRM)'' [9].

I observed that many authors place the word in the initial position of a sentence; however, Ms. Susanna Ho suggested that it had better to be put in the middle of a sentence concerning the tone problem. By placing however at the beginning, authors seems to be introduce a great discovery or invention; however, it is not true most of the time.

Tense and Voice


It turns out that the present tense and active voice are most commonly used in the introduction section when authors present their work, which may be due to the fact that computer networking belongs to the engineering area, so that the researchers hope that their work appears to be true. However, if the literature review is included in the introduction part, the past tense, the present perfect tense and the present future tense are possible to show up due to the actual situation. Though passive voice is common when other researchers' work is referred, active voice is used most of time when authors are talking about their own work.

* ``In this paper, we examine an approach ... ''[4].
* ``CER and DER protocols with optimizations have been compared regarding ...'' [5].
* ``In the following, we will compare ...'' [5].
* ``We propose a new probabilistic feedback method ...'' [6].
* ``We further evaluate our mechanism...'' [6].
* ``Note that local recovery is a performance optimization, ...'' [7].
* ``We find that a layered approach makes more efficient use ...''[8].
* ``It has been argued that a single dynamically configurable protocol should be used ...'' [9].
* ``In 1990 Clark and Tennenhouse proposed ... '' [9].
* ``ALF was later elaborated with ... '' [9].

Reference Citation


Based on my observations, there are two types of citation ways for the reference, either implicit or explicit. Implicit citation occurs when a concept, a model or a algorithm, etc. is referred, while explicit citation often needs to point out the original presenter of the concept, etc. On the other hand, if the citations show up in an individual section "related work", it is more likely that the citation will be presented in an explicit way. Maybe paper authors would like to acknowledge the contribution in a more direct way.

* ``Reliable multicast could benefit from the use of forward error correction (FEC) [24] ''[4].
* ``Cheung et al. [5], McCanne [23] and Vicisano [32] have proposed to ... ''[4].
* ``Further, there are no conflicts with existing classifications [3], [4].'' [5].
* ``In [8], two types of hybrid ARQ are introduced: ...'' [5].
* ``Ammar has defined the feedback problem as response collection via several cost functions [16].'' [6].
* ``SRM [3] exploits heterogeneous delays for a deterministic suppression ...'' [6].
* ``This limits the scalability of SRM as network and group size increases [6], [7]. '' [7].
* ``Hofmann [23]-[25] proposed a "local group concept". '' [7].

John Swales [1] points out that at least two-thirds of all citing statements use the past tense, the present perfect tense or the present tense. The above examples also support the argument. Note that the past tense refers to single studies, the present perfect tense refers to the areas of inquiry and the present tense refers to the state of current knowledge. Besides, the former two tenses focus on what previous researchers did, while the latter one gives attentions to what has been found [1].

Summary


The essay summarizes the findings during the Lang503 study for the writing by the case study.

References


1
John M. Swales and Christine B. Feak, Academic writing for graduate students : essential tasks and skills : a course for nonnative speakers of English, Ann Arbor : University of Michigan Press, 1994.

2
Abby Day, How to get research published in journals , Aldershot, Hampshire, England : Gower, 1996.

3
Ralph Berry, How to write a research paper, Oxford, New York : Pergamon Press, 1986.

4
S. K. Kasera, G. Hjalmtusson, D. F. Towsley, and J. F. Kurose, ``Scalable reliable multicast using multiple multicast channels'', IEEE/ACM Trans. Networking, vol. 8, pp. 29

About this document ...
How to Write Journal Paper in Computer Networking

This document was generated using the LaTeX2HTML translator Version 97.1 (release) (July 13th, 1997)

Copyright © 1993, 1994, 1995, 1996, 1997, Nikos Drakos, Computer Based Learning Unit, University of Leeds.

The command line arguments were:
latex2html paper.tex.

The translation was initiated by Hei Xiao Jun on 5/9/2001

How to Write a Master's Thesis in Computer Science

How to Write a Master's Thesis in Computer Science

William D. Shoaff
Department of Computer Sciences
Florida Institute of Technology
Melbourne, Florida 32901

August 21, 2001


Contents

* Contents
* Introduction
* Skills You Will Need
* How to Write Your Program
o Write a Requirements Document
o Write Specification and Design Documents
o Write The Comments First
o Other Program Related Documentation
o Use a Program Document Formatter
* How To Write Your Paper
o Write a Thesis Proposal
o Write An Outline For Each Chapter
o Publish Your Results
* Collected Guidelines
* Rules and Regulations
* Bibliography

Introduction

If you are about to embark on the task of developing a Master's thesis in Computer Science, then this document may be of interest to you. The scope of this document is very narrow and deals only with certain features of thesis development that are unique to the field of Computer Science. For more general information, you should consult sources such as Strunk and White's Elements of Style [3], Turabian's Student's Guide for Writing College Papers [4], and the University's guide to thesis preparation.

Before we get into the heart of the matter, you should ask yourself if you have the background and skills required to successfully complete a thesis in Computer Science. The next section lists some of the skills you will be expected to possess.

Skills You Will Need

While there are no hard and fast rules that guarantee you have the background and skills required to complete a thesis in Computer Science, there are some indicators. Here is a list of some of these indicators.

* A good grade point average. This indicates that you have basic academic skills. It is difficult to specify an exact cut-off, but a 3.2 on a 4.0 scale is a reasonable minimum.
* The ability to write in the English language. Practice writing. Effective communication is essential in all disciplines. If you need help, contact the Language Institute or English Department.
* The ability to express yourself orally. You will be asked to present lectures on your work at the Computer Science seminar.
* Mastery of the computer language in which you will develop your program. You should not look at your thesis work as an opportunity to learn how to program. You should be very familiar with the operating system you will use and system utilities such as editors, document formatters, debuggers, etc.
* The ability to work with others. You must be able to work with your thesis advisor, and you may need to work with other faculty and students as well.
* The ability to take direction. Your thesis advisor will give you guidance, but you must do the work.
* The ability to conduct literature surveys. You must insure that your work is current and relevant even though it may not be original or unique.
* The ability to integrate ideas from various areas. This is key to a thesis. Extracting items of interest from many sources and generating new information by integrating these items in new ways is the essence of writing a thesis.
* The ability to think independently. Your work must be your own. Your advisor will not tell you what to do at every step, but will only suggest a direction. The rest is up to you.
* The ability to perform when imprecise goals are set for you, that is, you must be self-directed.

Most theses in Computer Science consist of two distinct parts: (1) writing a significant program, and (2) writing a paper that describes your program and why you wrote it. The intent of this document is to guide you in how to do these two things. Of course, you will need to have taken certain courses, read certain books and journal articles, and otherwise perform some basic research before you begin writing your program or thesis. If your thesis does not involve writing a program, you can skip section 3.


How to Write Your Program

Presumably you have a thesis topic, and it is time to start developing a program that will implement or demonstrate your ideas about this topic. You have learned how to write programs in previous courses, but usually the program you will write for your thesis is more involved than other programs you have written. Thus, it is important to use good software engineering techniques.

Write a Requirements Document

The requirements document explains what your program is to do. Often the requirements will be quite vague. For example, ``the system must be fast,'' or ``the system must be user-friendly.'' You'll want to write a set of requirements that can serve as a contract specifying what is expected of your program. What's in a requirements document? Abstractly, the answer is very simple: a statement of valid input to the program and a statement of the corresponding output. Your software will operate on some data and derive computed data. The requirements document will clearly state what the input data and output data will be. The requirements document tells what your program will do from the user's perspective.

Write Specification and Design Documents

The specification document explains what the requirements are, but more precisely than the requirements document itself. It restates the requirements from the point of view of the developer. The specifications are explicitly and precisely stated. They are statements that you can design to and test for. Essentially, the specifications define a function from the set of all possible data input to the data output by your program.

The preliminary design document explains how you are going to fulfill the specifications. It is written before you write the program and should include a list of algorithms you will use, major data structures, a list of major functions, their inter-relationships, and the steps you will use to develop your program. Stepwise refinement and information hiding concepts should be used in developing the program, producing a detailed design document.


Write The Comments First

Understanding where and how to comment your code is important. Comments help you understand what is to be done. It is backwards to the write code and then try to explain what it does. Basic rules include giving pre- and post-conditions for selection and iteration statements, as well as blocks of sequential code. Additionally, loop invariants need to be developed for iteration statements. Data structures and their use also need to be explained.

Other Program Related Documentation

Additional documents are sometimes required for a program. These include a user's manual, a maintenance manual, and a test suite. Often these will appear as appendices in your thesis. The user's manual describes the user interface to your program. The maintenance manual describes how to change, augment, or port your program. The test suite offers some validation that your program will compute what was intended by describing test procedures and sample test inputs.

Write a User's Manual

Most likely others will use your program. Writing a good user's manual will facilitate the use of your program. The important thing is to write for the naive user. It is best to assume that users of your program will know nothing about computers or their interfaces. A clear, concise, step-by-step description of how one uses your program can be of great value not only to others, but to you as well. You can identify awkward or misleading commands, and by correcting these, develop a much more usable product. Start from your requirements document to remind yourself what your program does.

Write a Maintenance Manual

If your work has lasting benefit, someone will want to extend the functionality of your code. A well thought-out maintenance manual can assist in explaining your code. The maintenance manual grows from your specification, preliminary design, and detailed design documents. The manual shows how your program is decomposed into modules, specifies the interfaces between modules, and lists the major data structures and control structures. It should also specify the effective scope of changes to your code.

Write a Test Suite

How will you guarantee that your program meets its specifications? Formal verification is one ``proof'' technique, but it can be difficult to apply for large programs. You should be familiar with verification techniques and use them as you develop your code, but others are still going to want to see that your code gives expected results on a sample of test cases. Thus, you should develop a test suite that can be used to show your program works correctly under a variety of conditions by specifying testing procedures to be used and a variety of test cases to ``exercise'' the components of your program.

Use a Program Document Formatter

I believe in literate programming, that is, a program should be written to be read and understood by any person experienced in programming. The most basic method of facilitating human consumption of your program is to write good internal comments as discussed in § 3.3. Much more sophisticated methods exist; one of these is the WEB system developed by Don Knuth [1]. The original WEB system was written for Pascal, but WEB systems for other languages have been written, and there is even a program called spiderweb that can be used to generate a WEB system for any programming language [2,5].

Briefly, the benefits of using a WEB system are that it enables you to (1) develop your program logically, without the constraints imposed by the compiler, (2) provide for excellent program documentation and modularity, and (3) track variables and modules automatically. An index of variables and modules is produced containing pointers to where the variables and modules are defined and used. To learn more about such systems, you should refer to the cited literature.

How To Write Your Paper

Your thesis paper documents your work and can serve as a basis for a publishable paper. The most common mistake made by thesis students is to assume that the thesis itself will be easy to write. Consequently, they postpone writing until they have completed their programming. By the time they produce an acceptable copy, they find that a term or two of school has slipped by and they still have not graduated. Important advice is to start writing early and ask your thesis advisor for feedback on your writing. Equally important, do not plagiarize. Plagiarism can result in expulsion from school. You are expected to write your own paper, not copy from what someone else has written. It is okay to use other people's ideas, even their own words, but you must clearly reference their work. Your paper should describe what you did and why you did it.

Everyone makes spelling mistakes, but with spelling checker programs available this type of error should be eliminated. Always run your written work through a spelling checker before you ask someone else to read it. Also, you should find someone who can correct grammatical mistakes in your paper. If necessary, hire someone from the English Department or Language Institute to correct your work before you give it to your advisor.

Also, use a professional document preparation system, for example, LATEX, troff, or WordPerfect, which allows you to print your document on a laser printer. There is an F.I.T. thesis style file that has been developed for LATEX, which will produce correct margins and other formats, plus automatically handle many details in the preparation of your thesis.

Write a Thesis Proposal

You will begin writing your paper the first quarter you are enrolled for thesis credit. You will write a thesis proposal that evolves into your thesis. Writing a good proposal is an important first step to success. Proposals will differ, but there are certain things that can be expected to be found in every one. There needs to a statement of (1) the problem to be studied, (2) previous work on the problem, (3) the software requirements, (4) the goals of the study, (5) an outline of the proposed work with a set of milestones, and (6) a bibliography.

Write An Outline For Each Chapter

The top-down approach, which is recommended for program development, carries over to the development of your thesis paper. Here, you should begin with an outline of each chapter. Although it is difficult to specify what should be included in each chapter of a thesis, the following outline is fairly general.


\begin{outline}\item Chapter 1 -- Introduction. \begin{outline} \item A statem... .... \item Appendix D -- Source Code. \item Appendix E -- Test Suite. \end{outline}
Your finished thesis must include a title page, signature page, abstract, and bibliography. See the University guide to thesis preparation for details. Make sure you follow the margin and format requirements exactly.

Publish Your Results

You should be proud of your work and want others to know about it. One way to show that you have done quality work is to publish it in a journal or present it at a conference. Thus, you should write a short 5-10 page paper that concisely explains what you did and why it is new or important. This paper can then be submitted to appropriate conferences and journals. The research you have done should provide you with a list of conferences and journals to which you can submit your work.

Collected Guidelines

Below is a quick list of the guidelines that have been discussed in this document.

* How to write your program.

1.
Write a requirements document that states the requirements your program must meet.
2.
Write specification, preliminary design, and detailed design documents that precisely define what the requirements are and how your program will meet the requirements.
3.
Write the comments first.
4.
Build a scaffold, which can be removed, that supports the construction of your program.
5.
Write a user's guide, maintenance manual, and test suite.
6.
Use a program document formatter such as WEB.

* How to write your paper.

1.
Enroll in XE 4022 Thesis Preparation.
2.
Start writing early.
3.
Do not plagiarize!
4.
Write a proposal that includes a statement of the problem under study, the software requirements, an indication of how the problem will be solved, and a survey of related literature.
5.
Use a spelling checker.
6.
Have someone proofread your paper for grammatical errors.
7.
Use a document formatter such as LATEX, troff, or WordPerfect.
8.
Develop an outline for each chapter before you write it.
9.
Write a short summary paper you can publish.

Rules and Regulations

There are several local requirements that you should be aware of so that you do not have unnecessary problems in completing your thesis. Many of these procedures or policies are described in other documents and will simply be summarized here.

* A thesis proposal must be written and approved in the first term you enroll for thesis credit.
* A thesis committee consisting of at least three faculty members, two in Computer Science and one in an outside department, must be selected during your second thesis term.
* Once enrolled for thesis credit, you must remain enrolled for thesis credit continuously until you complete your defense.
* You must present an overview of your thesis at a Computer Science Seminar prior to your defense.
* You must have your thesis approved by all committee members at least two weeks prior to your defense.
* You must verify to the Computer Science Department Chair that all committee members have agreed that you are prepared to defend your thesis.
* Two weeks prior to your defense, you must file an announcement of the defense with the Graduate School.
* If you successfully defend your thesis and complete all work on it within the first two weeks of a term, you are not required to register for that term.

If you simply follow the suggestions outlined and discussed in this paper, you will be well on your way to successfully completing the thesis requirements for attainment of a Master's Degree in Computer Science at the Florida Institute of Technology. Good luck!

Bibliography

1
D. E. KNUTH, Literate programming, The Computer Journal, 27 (1984), pp. 97-111.

2
N. RAMSEY, A spider's user's guide, tech. rep., Princeton University, 1989.

3
W. STRUNK JR. AND E. B. WHITE, The Elements of Style, MacMillan Publishing Company, 1979.

4
K. L. TURABIAN, A Manual for Writers of Term Papers, Theses, and Dissertations, The University of Chicago Press, 4th ed., 1973.

5
C. J. V. WYK AND N. RAMSEY, Literate programming -- weaving a language-independent web, Communications of the ACM, 32 (1989), pp. 1051-1055.

Florida Institute of Technology
Department of Computer Sciences
150 West University Boulevard,
Melbourne, FL 32901-6988
Tel. (321) 674-8763, Fax (321) 674-7046,
E-mail: www@cs.fit.edu

How To Write A Dissertation

How To Write A Dissertation
or
Bedtime Reading For People Who Do Not Have Time To Sleep
To The Candidate:

So, you are preparing to write a Ph.D. dissertation in an experimental area of Computer Science. Unless you have written many formal documents before, you are in for a surprise: it's difficult!

There are two possible paths to success:

o Planning Ahead.

Few take this path. The few who do leave the University so quickly that they are hardly noticed. If you want to make a lasting impression and have a long career as a graduate student, do not choose it.

o Perseverance.

All you really have to do is outlast your doctoral committee. The good news is that they are much older than you, so you can guess who will eventually expire first. The bad news is that they are more practiced at this game (after all, they persevered in the face of their doctoral committee, didn't they?).

Here are a few guidelines that may help you when you finally get serious about writing. The list goes on forever; you probably won't want to read it all at once. But, please read it before you write anything.





The General Idea:

1. A thesis is a hypothesis or conjecture.

2. A PhD dissertation is a lengthy, formal document that argues in defense of a particular thesis. (So many people use the term ``thesis'' to refer to the document that a current dictionary now includes it as the third meaning of ``thesis'').

3. Two important adjectives used to describe a dissertation are ``original'' and ``substantial.'' The research performed to support a thesis must be both, and the dissertation must show it to be so. In particular, a dissertation highlights original contributions.

4. The scientific method means starting with a hypothesis and then collecting evidence to support or deny it. Before one can write a dissertation defending a particular thesis, one must collect evidence that supports it. Thus, the most difficult aspect of writing a dissertation consists of organizing the evidence and associated discussions into a coherent form.

5. The essence of a dissertation is critical thinking, not experimental data. Analysis and concepts form the heart of the work.

6. A dissertation concentrates on principles: it states the lessons learned, and not merely the facts behind them.

7. In general, every statement in a dissertation must be supported either by a reference to published scientific literature or by original work. Moreover, a dissertation does not repeat the details of critical thinking and analysis found in published sources; it uses the results as fact and refers the reader to the source for further details.

8. Each sentence in a dissertation must be complete and correct in a grammatical sense. Moreover, a dissertation must satisfy the stringent rules of formal grammar (e.g., no contractions, no colloquialisms, no slurs, no undefined technical jargon, no hidden jokes, and no slang, even when such terms or phrases are in common use in the spoken language). Indeed, the writing in a dissertaton must be crystal clear. Shades of meaning matter; the terminology and prose must make fine distinctions. The words must convey exactly the meaning intended, nothing more and nothing less.

9. Each statement in a dissertation must be correct and defensible in a logical and scientific sense. Moreover, the discussions in a dissertation must satisfy the most stringent rules of logic applied to mathematics and science.


What One Should Learn From The Exercise:


1. All scientists need to communicate discoveries; the PhD dissertation provides training for communication with other scientists.

2. Writing a dissertation requires a student to think deeply, to organize technical discussion, to muster arguments that will convince other scientists, and to follow rules for rigorous, formal presentation of the arguments and discussion.


A Rule Of Thumb:


Good writing is essential in a dissertation. However, good writing cannot compensate for a paucity of ideas or concepts. Quite the contrary, a clear presentation always exposes weaknesses.


Definitions And Terminology:

1. Each technical term used in a dissertation must be defined either by a reference to a previously published definition (for standard terms with their usual meaning) or by a precise, unambiguous definition that appears before the term is used (for a new term or a standard term used in an unusual way).

2. Each term should be used in one and only one way throughout the dissertation.

3. The easiest way to avoid a long series of definitions is to include a statement: ``the terminology used throughout this document follows that given in [CITATION].'' Then, only define exceptions.

4. The introductory chapter can give the intuition (i.e., informal definitions) of terms provided they are defined more precisely later.


Terms And Phrases To Avoid:

* adverbs
Mostly, they are very often overly used. Use strong words instead. For example, one could say, ``Writers abuse adverbs.''
* jokes or puns
They have no place in a formal document.
* ``bad'', ``good'', ``nice'', ``terrible'', ``stupid''
A scientific dissertation does not make moral judgements. Use ``incorrect/correct'' to refer to factual correctness or errors. Use precise words or phrases to assess quality (e.g., ``method A requires less computation than method B''). In general, one should avoid all qualitative judgements.
* ``true'', ``pure'',
In the sense of ``good'' (it is judgemental).
* ``perfect''
Nothing is.
* ``an ideal solution''
You're judging again.
* ``today'', ``modern times''
Today is tomorrow's yesterday.
* ``soon''
How soon? Later tonight? Next decade?
* ``we were surprised to learn...''
Even if you were, so what?
* ``seems'', ``seemingly'',
It doesn't matter how something appears;
* ``would seem to show''
all that matters are the facts.
* ``in terms of''
usually vague
* ``based on'', ``X-based'', ``as the basis of''
careful; can be vague
* ``different''
Does not mean ``various''; different than what?
* ``in light of''
colloquial
* ``lots of''
vague & colloquial
* ``kind of''
vague & colloquial
* ``type of''
vague & colloquial
* ``something like''
vague & colloquial
* ``just about''
vague & colloquial
* ``number of''
vague; do you mean ``some'', ``many'', or ``most''? A quantative statement is preferable.
* ``due to''
colloquial
* ``probably''
only if you know the statistical probability (if you do, state it quantatively
* ``obviously, clearly''
be careful: obvious/clear to everyone?
* ``simple''
Can have a negative connotation, as in ``simpleton''
* ``along with''
Just use ``with''
* ``actually, really''
define terms precisely to eliminate the need to clarify
* ``the fact that''
makes it a meta-sentence; rephrase
* ``this'', ``that''
As in ``This causes concern.'' Reason: ``this'' can refer to the subject of the previous sentence, the entire previous sentence, the entire previous paragraph, the entire previous section, etc. More important, it can be interpreted in the concrete sense or in the meta-sense. For example, in: ``X does Y. This means ...'' the reader can assume ``this'' refers to Y or to the fact that X does it. Even when restricted (e.g., ``this computation...''), the phrase is weak and often ambiguous.
* ``You will read about...''
The second person has no place in a formal dissertation.
* ``I will describe...''
The first person has no place in a formal dissertation. If self-reference is essential, phrase it as ``Section 10 describes...''
* ``we'' as in ``we see that''
A trap to avoid. Reason: almost any sentence can be written to begin with ``we'' because ``we'' can refer to: the reader and author, the author and advisor, the author and research team, experimental computer scientists, the entire computer science community, the science community, or some other unspecified group.
* ``Hopefully, the program...''
Computer programs don't hope, not unless they implement AI systems. By the way, if you are writing an AI thesis, talk to someone else: AI people have their own system of rules.
* ``...a famous researcher...''
It doesn't matter who said it or who did it. In fact, such statements prejudice the reader.
* Be Careful When Using ``few, most, all, any, every''.
A dissertation is precise. If a sentence says ``Most computer systems contain X'', you must be able to defend it. Are you sure you really know the facts? How many computers were built and sold yesterday?
* ``must'', ``always''
Absolutely?
* ``should''
Who says so?
* ``proof'', ``prove''
Would a mathematician agree that it's a proof?
* ``show''
Used in the sense of ``prove''. To ``show'' something, you need to provide a formal proof.
* ``can/may''
Your mother probably told you the difference.


Voice:

Use active constructions. For example, say ``the operating system starts the device'' instead of ``the device is started by the operating system.''


Tense:

Write in the present tense. For example, say ``The system writes a page to the disk and then uses the frame...'' instead of ``The system will use the frame after it wrote the page to disk...''


Define Negation Early:

Example: say ``no data block waits on the output queue'' instead of ``a data block awaiting output is not on the queue.''


Grammar And Logic:

Be careful that the subject of each sentence really does what the verb says it does. Saying ``Programs must make procedure calls using the X instruction'' is not the same as saying ``Programs must use the X instruction when they call a procedure.'' In fact, the first is patently false! Another example: ``RPC requires programs to transmit large packets'' is not the same as ``RPC requires a mechanism that allows programs to transmit large packets.''

All computer scientists should know the rules of logic. Unfortunately the rules are more difficult to follow when the language of discourse is English instead of mathematical symbols. For example, the sentence ``There is a compiler that translates the N languages by...'' means a single compiler exists that handles all the languages, while the sentence ``For each of the N languages, there is a compiler that translates...'' means that there may be 1 compiler, 2 compilers, or N compilers. When written using mathematical symbols, the difference are obvious because ``for all'' and ``there exists'' are reversed.


Focus On Results And Not The People/Circumstances In Which They Were Obtained:

``After working eight hours in the lab that night, we realized...'' has no place in the dissertation. It doesn't matter when you realized it or how long you worked to obtain the answer. Another example: ``Jim and I arrived at the numbers shown in Table 3 by measuring...'' Put an acknowledgement to Jim in the dissertation, but do not include names (even your own) in the main body. You may be tempted to document a long series of experiments that produced nothing or a coincidence that resulted in success. Avoid it completely. In particular, do not document seemingly mystical influences (e.g., ``if that cat had not crawled through the hole in the floor, we might not have discovered the power supply error indicator on the network bridge''). Never attribute such events to mystical causes or imply that strange forces may have affected your results. Summary: stick to the plain facts. Describe the results without dwelling on your reactions or events that helped you achieve them.


Avoid Self-Assessment (both praise and criticism):

Both of the following examples are incorrect: ``The method outlined in Section 2 represents a major breakthrough in the design of distributed systems because...'' ``Although the technique in the next section is not earthshaking,...''


References To Extant Work:

One always cites papers, not authors. Thus, one uses a singular verb to refer to a paper even though it has multiple authors. For example ``Johnson and Smith [J&S90] reports that...''

Avoid the phrase ``the authors claim that X''. The use of ``claim'' casts doubt on ``X'' because it references the authors' thoughts instead of the facts. If you agree ``X'' is correct, simply state ``X'' followed by a reference. If one absolutely must reference a paper instead of a result, say ``the paper states that...'' or ``Johnson and Smith [J&S 90] presents evidence that...''.


Concept Vs. Instance:

A reader can become confused when a concept and an instance of it are blurred. Common examples include: an algorithm and a particular program that implements it, a programming language and a compiler, a general abstraction and its particular implementation in a computer system, a data structure and a particular instance of it in memory.


Terminology For Concepts And Abstractions

When defining the terminology for a concept, be careful to decide precisely how the idea translates to an implementation. Consider the following discussion:

VM systems include a concept known as an address space. The system dynamically creates an address space when a program needs one, and destroys an address space when the program that created the space has finished using it. A VM system uses a small, finite number to identify each address space. Conceptually, one understands that each new address space should have a new identifier. However, if a VM system executes so long that it exhausts all possible address space identifiers, it must reuse a number.

The important point is that the discussion only makes sense because it defines ``address space'' independently from ``address space identifier''. If one expects to discuss the differences between a concept and its implementation, the definitions must allow such a distinction.


Knowledge Vs. Data

The facts that result from an experiment are called ``data''. The term ``knowledge'' implies that the facts have been analyzed, condensed, or combined with facts from other experiments to produce useful information.


Cause and Effect:

A dissertation must carefully separate cause-effect relationships from simple statistical correlations. For example, even if all computer programs written in Professor X's lab require more memory than the computer programs written in Professor Y's lab, it may not have anything to do with the professors or the lab or the programmers (e.g., maybe the people working in professor X's lab are working on applications that require more memory than the applications in professor Y's lab).


Drawing Only Warranted Conclusions:

One must be careful to only draw conclusions that the evidence supports. For example, if programs run much slower on computer A than on computer B, one cannot conclude that the processor in A is slower than the processor in B unless one has ruled out all differences in the computers' operating systems, input or output devices, memory size, memory cache, or internal bus bandwidth. In fact, one must still refrain from judgement unless one has the results from a controlled experiment (e.g., running a set of several programs many times, each when the computer is otherwise idle). Even if the cause of some phenomenon seems obvious, one cannot draw a conclusion without solid, supporting evidence.


Commerce and Science:

In a scientific dissertation, one never draws conclusions about the economic viability or commercial success of an idea/method, nor does one speculate about the history of development or origins of an idea. A scientist must remain objective about the merits of an idea independent of its commercial popularity. In particular, a scientist never assumes that commercial success is a valid measure of merit (many popular products are neither well-designed nor well-engineered). Thus, statements such as ``over four hundred vendors make products using technique Y'' are irrelevant in a dissertation.


Politics And Science:

A scientist avoids all political influence when assessing ideas. Obviously, it should not matter whether government bodies, political parties, religious groups, or other organizations endorse an idea. More important and often overlooked, it does not matter whether an idea originated with a scientist who has already won a Nobel prize or a first-year graduate student. One must assess the idea independent of the source.


Canonical Organization:

In general, every dissertation must define the problem that motivated the research, tell why that problem is important, tell what others have done, describe the new contribution, document the experiments that validate the contribution, and draw conclusions. There is no canonical organization for a dissertation; each is unique. However, novices writing a dissertation in the experimental areas of CS may find the following example a good starting point:

o
Chapter 1: Introduction
An overview of the problem; why it is important; a summary of extant work and a statement of your hypothesis or specific question to be explored. Make it readable by anyone.
o
Chapter 2: Definitions
New terms only. Make the definitions precise, concise, and unambiguous.
o
Chapter 3: Conceptual Model
Describe the central concept underlying your work. Make it a ``theme'' that ties together all your arguments. It should provide an answer to the question posed in the introduction at a conceptual level. If necessary, add another chapter to give additional reasoning about the problem or its solution.
o
Chapter 4: Experimental Measurements
Describe the results of experiments that provide evidence in support of your thesis. Usually experiments either emphasize proof-of-concept (demonstrating the viability of a method/technique) or efficiency (demonstrating that a method/technique provides better performance than those that exist).
o
Chapter 5: Corollaries And Consequences
Describe variations, extensions, or other applications of the central idea.
o
Chapter 6: Conclusions
Summarize what was learned and how it can be applied. Mention the possibilities for future research.
o
Abstract:
A short (few paragraphs) summary of the the dissertation. Describe the problem and the research approach. Emphasize the original contributions.


Suggested Order For Writing:

The easiest way to build a dissertation is inside-out. Begin by writing the chapters that describe your research (3, 4, and 5 in the above outline). Collect terms as they arise and keep a definition for each. Define each technical term, even if you use it in a conventional manner.

Organize the definitions into a separate chapter. Make the definitions precise and formal. Review later chapters to verify that each use of a technical term adheres to its definition. After reading the middle chapters to verify terminology, write the conclusions. Write the introduction next. Finally, complete an abstract.


Key To Success:

By the way, there is a key to success: practice. No one ever learned to write by reading essays like this. Instead, you need to practice, practice, practice. Every day.


Parting thoughts:

We leave you with the following ideas to mull over. If they don't mean anything to you now, revisit them after you finish wirting a dissertation.


After great pain, a formal feeling comes.
-- Emily Dickinson

A man may write at any time, if he will set himself doggedly to it.
-- Samuel Johnson

Keep right on to the end of the road.
-- Harry Lauder

The average Ph.D. thesis is nothing but the transference of bones from one graveyard to another.
-- Frank J. Dobie

星期日, 十月 22, 2006

著名公司面试考题集锦

IBM代表性考题
1.Describe your greatest achievement in the past 4-5 years?
2. What are your short & long term career objectives? What do you think is

  the most ideal job for you?

  3. Why do you want to join IBM? What do you think you can contribute to

  IBM?

  Hongkong Bank 代表性考题

  1. Please state why you chose to follow these activities and how they have

  contributed to your personal development. You may wish to give details of

  your role whether anyone else was involved and any difficulties you

  encountered.

  2. Please state how you have benefited from your work experience.

  3. How much is your present monthly salary including allowances.

  4. Do you need to compensate your present employer if you resign? If so,

  please give details.

  5. Other than academic success, what has been your greatest achievement to

  date? What do you see as your personal strength, why?

  6.Please state why the position you have applied for is appropriate for

  you; Why you have selected HongKong Bank and what your career objectives

  are.

  P&G代表性考题

  1.Describe an instance where you set your sights on a high demanding goal

  and saw it through completion?

  2.Summerize a situation where you took the initiative to get others going

  on an important task or issue, and played a leading role to achieve the

  results you wanted.

  3. Describe a situation where you had to seek out a relevant information,

  define key issues, and decide on which steps to take to get the desired

  results.

  4. Describe an instance where you made effective use of facts to secure the

  agreement of others.

  5. Give an example of how you worked effectively with people to accomplish

  an important result.

  6.Desribe a creative/innovative idea that you produced which led to a

  significant contribution to the success of an activity or project.

  7.Provide an example of how you assessed a situation and achieved good

  results by focusing on the most important priorities.

  8.Provide an example of how you acquired technical skills and converted

  them to practical application.

  A.T. keaney代表性考题

  1.Describe your greatest achievement in the past 4-5 years?

  2.What are your short-term and long-term career objectives? What do you

  think is the most ideal job for you?

  3.Why do you want to join A.T kearney? What do you think you can contribute

  to A.T kearney?

  4.Why are you applying for a position at Arthur Anderson?

  5. What are your expectations of our firm.

  6. Describe your hobbies and interests.

  Shell company代表性考题

  1.How wold your colleagues /classmates describe you in five words? On what

  evidence would they base this assessment.

  2.If you are asked to recruit the best graduates for shell, what would you

  do to attract them? What would you do to select them?

  3.Please describe a new activity that you have initiated and implemented.

  Please highlight your role out.

  4. Please describe your outstanding non-academic achievements.

  5.Please describe any other significant activities you have been involved

  in including organizing people.

  6. Imagine that Shell has found oil in an inland province of China, near a

  large river. You are responsible for planning how to transport the oil to

  the coast thousands of miles away. What are the main issue you would

  consider, and what would you do?

  CICC代表性考题

  1.Please tell us about an achievement that you are especially proud of

  because it was difficult or demanding.

  a) What the objective was?

  b) Why it is important to you?

  c) How you achieved it and the obstacles that you had to overcome in order

  to do so?

  2. What is your career plan? Three years after graduation, and five years

  after graduation?

  3. Why are you interested in investment bank? What other industries do you

  also have interests?

  4. Why do you think you can be a qualified investment banker? How can you

  contribute in this industry?

  微软的考题

  数学篇

  题目如下,希望大家解个答案出来

  1、1000!有几位数,为什么

  2、F(n)=1 n>8 n<12

  F(n)=2 n<2

  F(n)=3 n=6

  F(n)=4 n=other

  使用+ - * /和sign(n)函数组合出F(n)函数

  sign(n)=0 n=0

  sign(n)=-1 n<0

  sign(n)=1 n>0

  3、编一个程序求质数的和例如F(7)=1+3+5+7+11+13+17=58

  辑考题

  此题源于1981年柏林的德国逻辑思考学院,98%的测验者无法解题。

  前提:

  有五间房屋排成一列;所有房屋的外表颜色都不一样;所有的屋主来自不同的国家;所有的

  屋主都养不同的宠物;喝不同的饮料;抽不同的香烟.

  提示:

  英国人住在红色房屋里;瑞典人养了一只狗;丹麦人喝茶;绿色的房子在白色的房子的左边

  ;绿色房屋的屋主喝咖啡;抽Pall Mall香烟的屋主养鸟;黄色屋主抽Dunhill;位于最中间

  的屋主喝牛奶;挪威人住在第一间房屋里;抽Blend的人住在养猫人家的隔壁;养马的屋主

  在抽Dunhill的人家的隔壁。抽Blue Master的屋主喝啤酒;德国人抽Prince;挪威人住在

  蓝色房子隔壁;只喝开水的人家住在抽Blend的隔壁

  问:谁养鱼?

   五个人来自不同地方,住不同房子,养不同动物,吸不同牌子香烟,喝不同饮料,喜

  欢不同食物。根据以下线索确定谁是养猫的人?

  1,红房子在蓝房子的右边,白房子的左边(不一定紧邻)

  2,黄房子的主人来自香港,而且他的房子不在最左边。

  3,爱吃比萨饼的人住在爱喝矿泉水的人的隔壁。

  4,来自北京的人爱喝茅台,住在来自上海的人的隔壁。

  5,吸希尔顿香烟的人住在养马的人?右边隔壁。

  6,爱喝啤酒的人也爱吃鸡。

  7,绿房子的人养狗。

  8,爱吃面条的人住在养蛇的人的隔壁。

  9,来自天津的人的邻居(紧邻)一个爱吃牛肉,另一个来自成都

  智力题

  只有5分钟,超过5分钟就放弃,因为你绝对不会被微软招聘.

  这是微软招聘时的智力测试!!!!超过5分钟,淘汰!!!!

  test 1

  烧一根不均匀的绳需用一个小时,如何用它来判断半个小时?

  test 2

  。。。

  。。。

  。。。

  请仅用一笔画四根直线,将上图9各点全部连接。

  test 3

  对一批编号为1~100全部开关朝上(开)的灯进行以下操作:

  凡是1的倍数反方向拨一次开关;2的倍数反方向又拨一次开关;3的倍数反方向又

  拨一次开关。。。。。。

  问:最后为关熄状态的灯的编号。

  广州日报招聘考试题

   填空部分是一些时世题,如:我国有多少网民,三个代表、北京申奥什么的。 还

  有是记者的一些常识性的问题:如我国第一个以写新闻通讯出名的记者是谁?蔡元培曾

  经夸奖过的记者是谁?

   选择题范围与填空基本一样,包括时政和新闻知识:如深度采访的实质,记者的职

  业道德等。

   简答题就比较专业了。一道是你参加一条高速公路的开通典礼,如何在记者会上发

  的新闻通稿之外写出会上没说的内容。一道是你去一个单位采访,但没有任何该单位的

  证件、邀请函之类东西,你如何骗过门卫混进去。第三道是有几家香水公司都想让你说

  好话,就是做软新闻了,你该如何处理。第四道是A明星与B明星不和,你如何报道A骂B

  的话而又不能让B告你诽谤。

   写作题是以“今年冬天不太冷”为题任意想象,加叙加议。

   还有五道智力测验:如何喝道啤酒杯底部的啤酒、汽车过隧道但高2厘米该怎么办

  、你吃苹果时吃到几条虫最恶心之类,10只点燃的蜡烛,让风吹灭了2只,后来在关窗户

  前又吹灭1只。问最后还有几支。

    接下来还有一些心理测验,就无所谓对错了。

  KPMG样题

  "The big economic difference between nuclear and fossil-fuelled power

  stations is that nuclear reactors are more expensive to build and

  decommission, but cheaper to sun. So disputes over the relative efficiency

  of the two systems revolve not just around prices of coal and uranium today

  and tomorrow, but also around the way in which future income should be

  compared with current income."

  1. The main difference between nuclear and fossil-fuelled power stations is

  an economic one.

  TRUE

  UNTRUE

  CANNOT SAY

  2. The price of coal is not relevant to discussions about the relative

  efficiency of nuclear reactors.

  TRUE

  UNTRUE

  CANNOT SAY

  3. If nuclear reactors were cheaper to build and decommission than

  fossil-fuelled power stations, they would definitely have the economic

  advantage.

  TRUE

  UNTRUE

  CANNOT SAY

  "At any given moment we are being bombarded by physical and psychological

  stimuli competing for our attention. Although our eyes are capable of

  handling more than 5 million bits of data per second, our brain are capable

  of interpreting only about 500 bits per second. With similar disparities

  between each of the other senses and the brain, it is easy to see that we

  must select the visual, auditory, or tactile stimuli that we wish to

  compute at any specific time."

  4.Physical stimuli usually win in the competition for our attention.

  TRUE

  UNTRUE

  CANNOT SAY

  5. The capacity of the human brain is sufficient to interpret nearly all

  the stimuli the senses can register under optimum conditions.

  TRUE

  UNTRUE

  CANNOT SAY

  6. Eyes are able to cope with a greater input of information than ears.

  TRUE

  UNTRUE

  CANNOT SAY

  VERBAL ANSWER:

  1. C CANNOT SAY

  2. B UNTRUE

  3. A TRUE

  4. C CANNOT SAY

  5. B UNTRUE

  6. C CANNOT SAY

  PartII NUMERCAL TEST

  1. Which country had the highest number of people aged 60 or over at the

  start of 1985?

  A. UK

  B. France

  C. Italy

  D. W.Germany

  E. Spain

  2. What percentage of the total 15mm button production was classed as

  sub-standard in September?

  AA 10.5% BB 13% CC 15% DD 17.5% EE 20% AB 23.5% AC 25%

  AD 27.5% AE 28% BC 30.5%

  3. How many live births occurred in 1985 in Spain and Italy together (to

  the nearest 1000)?

  A. 104,000

  B. 840,000

  C. 1,044,000

  D. 8,400,000

  E. 10,440,000

  4. What was the net effect on the UK population of the live birth and death

  rates in 1985?

  A.Decrease of 66,700

  B.Increase of 752,780

  C.Increase of 84,900

  D.Cannot Say

  E.Increase of 85,270

  5. By how much did the total sales value of November‘s button production

  vary from October‘s?

  A.8.50(Decrease)

  B.42.50(Decrease)

  C.85.00(Increase)

  D.27.50(Decrease)

  E.No change

  6. What was the loss in potential sales revenue attributable to the

  production of sub-standard (as opposed to standard) buttons over the 6

  month period?

  A.13.75

  B.27.50

  C.137.50

  D.280.00

  E.275.00

  至于图嘛

  是

  1:Population Structure 1985

  country

  population at start of years(millions)

  live bitrhs per 1000 population(jan-dec)

  deaths per 1000 population(jan-dec)

  %of population at start of year aged:under15

  %of population at start of year aged:60 or over

  UK 56.6 13.3 11.8 19 21

  France 55.2 13.9 10.0 21 19

  Italy 57.1 1.1 9.5 19 19

  W.Germany 61.0 9.6 11.5 15 20

  Spain 38.6 12.1 7.7 23 17

  2:production of 15mm buttons,july-dec

  total(standard and sub-standard) production(in thousands)

  standard production(in thousands)

  july 70 60

  aug 60 55

  sept 85 65

  oct 100 80

  nov 95 85

  dec 100 90

  sale price: standard: $5.7 per 100

  sub-stand:$2.85 per 100

  答案是:

  1. D W. Germany

  2. AB 23.5%

  3. C 1,044,000

  4. B Increase of 84,900

  5. E No change

  6. C 137.50

  声明:图2原是一张图表,为了刊登,特将它变为了直观的数字

  Intel的笔试题

  1. 三个float:a,b,c 问值

  (a+b)+c==(b+a)+c

  (a+b)+c==(a+c)+b

  2. 把一个链表反向填空

  3. 设计一个重采样系统,说明如何anti-alias

  4. y1(n)=x(2n), y2(n)=x(n/2),问:

  如果y1为周期函数,那么x是否为周期函数

  如果x为周期函数,那么y1是否为周期函数

  如果y2为周期函数,那么x是否为周期函数

  如果x为周期函数,那么y2是否为周期函数

  5. 如果模拟信号的带宽为5KHZ,要用8K的采样率,怎么办。

  4. 某个程序在一个嵌入式系统(200M的CPU,50M的SDRAM)中已经最化了,换到另一个系统

  (300M的CPU,50M的SDRAM)中运行,还需要优化吗?

  5. x^4+a*x^3+x^2+c*x+d最少需要作几次乘法

  6. 什么情况下,sin(x+y)+y ~ ....

  7. 下面哪种排序法对12354最快

  a quick sort

  b.buble sort

  c.merge sort

  8. 哪种结构,平均来讲,获取一个值最快

  a. binary tree

  b. hash table

  c. stack

  香港电信笔试题

  1.Based on your understanding of the following java related technologies:

  servlets,JavaServerPage,JavaBeans,Enterprise JavaBeans, how do you think

  these technologies are work together or are applied in the development of

  an internet-based application(25marks)

  2.In your opinion ,what do you think are the advantages or benefitsof using

  an object-oriented approach to software development? how do you think those

  benefits can be achieved or realized?(15marks)

  3.In designing your classes, given the choice between inheritance and

  aggregation which do you choose(15marks)

  4.How would you work around the lack of multiple inheritance feature in

  Java(15marks)

  5.What would you consider to be the hardest part of OO analysis and design

  and why(10marks)

  6.How do you keep yourself up to date with the latest in software

  techonogy, especially in the field of software development(10marks)

  7.What si your career aspiration? Why do you think this E-Commerce

  Development Center can help you in achieving your career goals(10marks)

  (1hr, answer in English)

  国泰君安--一道试题

  一列火车上三个工人,史密斯——琼斯——罗伯特,三人工作为消防员,司闸员,机械

  师,有三个乘客与三人名字相同。

  1。罗伯特住在底特律

  2。司闸员住在芝加哥和底特律中间的地方

  3。琼斯一年赚2万美金

  4。有一个乘客和司闸员住在一个地方,每年的薪水是司闸员的3倍整。

  5。史密斯台球打得比消防员好。

  6。和司闸员同名的乘客住在芝加哥。

  请问谁是机械师?

  华为面试题

  Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?

  Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢

  ?

  Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?

  Q4:请问C++的类和C里面的struct有什么区别?

  Q5:请讲一讲析构函数和虚函数的用法和作用?

  Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?

  Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。

  Q8:8086是多少位的系统?在数据总线上是怎么实现的?

  德勤--推理题

  五个人来自不同地方,住不同房子,养不同动物,吸不同牌子香烟,喝不同饮料,喜欢

  不同食物。根据以下线索确定谁是养猫的人。

  1,红房子在蓝房子的右边,白房子的左边(不一定紧邻)

  2,黄房子的主人来自香港,而且他的房子不在最左边。

  3,爱吃比萨饼的人住在爱喝矿泉水的人的隔壁。

  4,来自北京的人爱喝茅台,住在来自上海的人的隔壁。

  5,吸希尔顿香烟的人住在养马的人?右边隔壁。

  6,爱喝啤酒的人也爱吃鸡。

  7,绿房子的人养狗。

  8,爱吃面条的人住在养蛇的人的隔壁。

  9,来自天津的人的邻居(紧邻)一个爱吃牛肉,另一个来自成都。

  10,养鱼的人住在最右边的房子里。

  11,吸万宝路香烟的人住在吸希尔顿香烟的人和吸“555”香烟的人的中间(紧邻)

  12,红房子的人爱喝茶。

  13,爱喝葡萄酒的人住在爱吃豆腐的人的右边隔壁。

  14,吸红塔山香烟的人既不住在吸健牌香烟的人的隔壁,也不与来自上海的人相邻。

  15,来自上海的人住在左数第二间房子里。

  16,爱喝矿泉水的人住在最中间的房子里。

  17,爱吃面条的人也爱喝葡萄酒。

  18,吸“555”香烟的人比吸希尔顿香烟的人住的靠右。

我对女性做工程师的一点看法

2006年3月8日 上午 08:29:00
发表者: 王忻,Google 工程师

去年 10 月,我跟开复去南京大学做演讲谈 Google 的技术,讲座结束之后,有一位女同学提了个问题让我很惊讶。

她说: "我是学计算机软件的,蛮喜欢的。但是女生学这行不太好吧?你看我该不该找个时机改行?"

我问: "你为什么会觉得女生不适合学软件?"

"女生三十岁以后, 体力和智力下降, 会跟不上男同事。"

这是我第一次听到如此具体的性别歧视,挺吃惊。做为一位女性软件工程师, 我平时难免听到了一些对于女性做工程师和对女性能力的疑问,我觉得这些话最大的危险是影响到人的自信。

我在北京出生,五岁时我父母到美国留学,于是把我也带了去。 我父亲是数学博士,母亲从小就用心辅导我,所以我小时候数学特别好。十岁的时候我就开始在附近的大学选微积分课, 随后又跳了三级,十五岁进入了加州理工大学 (California Institute of Technology)。现在说起来简单,但当时我的经历经常遭到别人的反对,说我年龄太小、学不好之类的话,或者说女性不适合学计算机。我当时觉得这些话大都很可笑,没有在意,当然也要特别感谢我父母没拿它当回事。后来我顺利的完成了所有的学业,用事实证明了我走的路,那些所谓的“预言”也就不攻自破了。

后来我在美国另一家大软件公司做了五年的工程师, 随后来 Google ,在这里已经工作了两年半。 在 Google, 我第一次有了很多杰出的女性榜样。我们公司有六位女性副总裁, 两位女性董事会成员,当然还有许多女性工程师总监、女性工程师等等...... 目前我的老板 (manager) 就是一位女性主管经理。她是我的第一个女老板,我从她身上学了很多女性擅长的本领,比如如何让别人采取你的观点,同时又不伤害他们的感情等等(她也是中国人)。

Google 意识到女性员工在很多问题上可以给公司一些新的视角。 创始人 Larry Page 去年对我们的人事部门订了要求,要求新招的软件工程师里应该有 25% 是女性,当然这是不能以降低录取标准为前提的。所以我们下了更多功夫去寻找女工程师,邀请她们来面试。 这可不是口头说说而已 – Larry 专门调了三分之一的人事部员工去招聘女工程师。结果去年我们的女工程师比例在 6 个月内由 13 %上升到 19 %。 Google 每几个月还会邀请中学和小学朋友来参观公司、与员工谈话,对于其中的女孩子,Google 一直鼓励她们要好好学习科学和电脑。

Google 还要求在我们应聘面试的过程中至少要有一名女性面试官,如果申请者被发现有性别歧视,那不管这个人有多聪明也不会被录取。我曾经有过这方面的亲身经历。两年前,我和一位男同事共同面试一个男性应聘者。当时我考了他一道难题,但那位应聘者回答时,只对我的男同事讲话, 几乎不睬理我。45 分钟的面试中,我感觉越来越不舒服。事后,我把我的顾虑写进了面试反馈。另一位女性面试官也表示了同感。结果,虽然这位应聘者其它方面都表现的很好,他还是被拒绝了录取。

其实从很多细节上可以看出 Google 对女性员工的重视。软件公司庆祝业绩时,常常会发 T 恤,Google 也不例外。别的公司因为男员工比较多,常常只订男尺寸,造成我家里存了很多大的只能当睡衣的 T 恤。但是 Google 每次总会订女生的大、中、小号。每个小组庆祝阶段性成果的时候,也会挑男女员工都喜欢的活动,比如听现场相声等,而不仅仅是看跑车赛或棒球。

我虽然在 Google 很幸运有许多优秀的女性软件工程师和同事, 但有时侯会觉得也许其它公司的女性没有公司这样支持她们。我想利用这个机会鼓励国内和海外的女性软件工程师,相信自己,让那些对女性的怀疑消失!

三八妇女节快乐!


在 Party 上的三位 Google 女工程师和公司高级工程副总裁 Alan Eustace
从左到右:王忻 (作者),Maureen, 郑韶敏, Alan Eustace

如何写一份好的工程师简历

2006年6月14日 上午 10:15:00
发表者:王忻,Google 工程师

最近三年作为 Google(谷歌)的软件工程师,我每周会帮人事部门审查简历,决定要不要给他们面试。Google 这几年的发展让很多许多优秀的工程师都前来申请。到目前为止,我已经看了上千份简历,有些简历留下的印象比别的好很多。尤其是最近亲戚朋友常常问我如何修改他们的简历,所以我积累了一些常见的错误避免的提议,在此跟大家交流一下。

1.谈到你做过的技术时,应该提到用的程序语言、你的个人贡献和产品细节。

有时我看到有人把过去的经验在简历上一笔带过,比如说:

• 在三人小组里,为电子邮件软件写了些 features。

这是远远不够的,看简历的人希望了解你做的工作的难度和对本公司有多少联系,所以你最好写的具体一些。譬如:

• 用 C++ 语言写了网络电子邮件的自动 backups。在三人小组里,专门负责设计和写储存服务器。从设计开始, 一年后把这个功能 feature 的用户推到了三千。

2.多讲事实, 少用形容词。

看简历的人读你的简历时,需要做判断,所以在简历里需要事实和数目。如果你写“迅速的提高了软件的操作效率”,看简历的人很难判断你成就的难度。但如果你写“在3个星期内,把软件的操作效率提高了40%” 就好多了。

有些谦虚的朋友们不愿意把话说满,所以你也可以用这个办法。你如果说自己“突出”或“在项目上常常被请去救火”,听起来难免会有点骄傲。但你也可以用不能否认的事实来说明你的观点,如“《纽约日报》评这个产品为‘突出’”,或“加入了三个原本已落后于计划的项目小组,但经过努力和组员一起把它们都按时完成了。”

3.你获得的奖、商业的荣誉或表扬、受用户欢迎的产品和你做过的有难度的业余项目都该包括在简历里。

我有位朋友在硅谷一个著名的硬件公司做了六年,她设计的 IP phone(网络电话)为公司赚了上亿的收入,被公司与商业报道多次评了奖。我有一次在旧金山的高速公路上驾车时,看到路边有她产品的广告牌;还有一次我去上海度假时,竟然发现上海公路边上也有!

不久,这位朋友决定换工作,请我看看她的简历。我惊讶的发现,她居然轻描淡写的写了一句-- "1998 – 2004:网络电话产品的硬件工程师组长" 和她的职责。

"产品赢的奖呢?它为公司赚的钱呢?" 我追问到。

"那些也该写吗?" 她说。

当然该写。

有人问,业余时间做的项目可不可以写?我觉得只要你的项目有代表性能说明对你的能力,都该包括。

4.分清主次,删掉相比之下不起眼的成绩,以免冲淡更加突出的成绩。

有朋友问,写简历是不是写的越多越好?譬如:

在甲公司做暑假实习生——
* 改善电子游戏的数值分类算法, 减少了内存要求 10%。
* 用 Java 写了 3000 行用户界面程序。
* 每周做两小时的人工测试。

你在申请软件工程师的职位时,我觉得前两点比较相关,第三点其实就不必写了。有时我看到有的简历里会提到,"按时完成了任务,产品符合原计划规格"。但读简历的人通常会认为这是理所当然的,而你把这些声明出来反而减弱简历的效果。

写一份简历不容易,但写好了也会带来成就感 (和好工作!)。 Google (谷歌)在中国广召各方面的人才,你不妨可以给我们投个简历!我们不但在信息检索方面招雇工程师,还有计算机图形、用户界面、硬件、Windows、质量保证员和系统管理员等方面。更多信息,请您访问这里。

谢谢阅读!大家感兴趣的话,下次我可以介绍“如何预备软件工程师的面试”。

如何准备软件工程师的面试

2006年10月13日 上午 09:33:00
发表者:王忻,Google 工程师

(作者简介: 王忻,Google 工程师。北京出生,五岁时跟随父母移居美国。中学期间跳了三级,十五岁进入了加州理工大学,加入 Google 前曾在微软等公司工作。)

六月份的时候,我曾经在黑板报上介绍过“如何写一份好的工程师简历”, 今天想跟大家来谈谈如何准备软件工程师的面试?假设,现在您的杀手简历 (killer resume)已经吸引了某大公司的注意并约你面试。那么接下来该如何准备呢?

我在 Google(以前是微软)工作期间面试了不下 300人,其中某些应聘者确实表现非凡,但有些却显得准备不足。当然许多面试准备不足的人最后依然获得了录用通知,因为他们本身确实才华出众。但如果应聘者能提前准备妥当,那么面试过程将更为保险和轻松。以下所列出的就是我根据多年经验总结得出的建议:

1.使用相同的工具(如铅笔和纸张)和时间限制(例如半个小时)模拟面试训练

Google 和微软都会让应聘者在白板上手工解答编程问题,但通常大部分的应聘者都是习惯于在电脑上利用编程工具系统编写程序。因此面试的时候,某些应聘者离开了熟悉的电脑光标,站在白板前感觉手足无措不知该如何起行。又或者他们不习惯在编程之时旁边有人观看,这会让他们感到紧张而无法正常思考。

在现实生活中,如果你想要横渡英吉利海峡,自然不能总是在室内游泳池练习。你必须投身于大海在波涛之中训练,在准备面试的时候也是如此。:)

在面试开始之前你最好向招聘单位询问面试形式和面试问题。如果招聘单位让你在某个房间考试且仅提供没有汇编程序的编辑器,那么就应该在家中按照这种情景进行练习。如果招聘公司单位让你在白板上回答问题并会安排考官在旁监督,那么你就要找一位软件工程师来扮演考官配合你练习。即使找来的考官经验不如你也没有关系,他们依然能帮助你消除在他人面前出错所带来的紧张感,这样可以让你适应有人在旁边盯着看的面试氛围。

如果你恰巧认识我并希望由我来帮你联系,那我的条件就是必须请我吃饭:如果你已经工作了就吃日本寿司大餐;如果你还是学生,那么吃比萨饼也可以。:)

2.在面试过程中不要对细小错误耿耿于怀

我曾不止一次的在面试过程中碰到这种情况:当应聘者知道编程问题后,他马上就想到了最佳的方案、确定了边界条件,然后开始编写程序。但在编写过程中,应聘者犯了诸如首先检查是不是操作顺序错误或忘记设定某变量等无关大局的小错误,当我指出其错误之后,应聘者立刻变得十分紧张,这种焦虑情绪影响了他在后面环节的正常发挥。

其实这种恐惧心理完全不必要。一名优秀的程序员在编程过程中出现错误也是很正常的,就像是小提琴手在演奏高难度的巴赫交响乐时也会偶尔失误。音乐会的听众可能会觉察到这些错误,但是听众绝对不会因为这种细小失误就把出色的小提琴手看作是门外汉。

即便应聘者彻底搞砸了某个编程问题,面试考官也可能会提出不同的问题并会容忍应聘者在某个问题上的失误。再退一步说,就算某次面试彻底失败,你也有机会在其它面试上补救。

我的一位同事(一个项目的技术负责人)最近面试了一个人,在开始面试时他觉得面试者的交流方式存在问题,因此开始表现的相当不友好。但经过了整个面试过程后,面试者证明了自身的能力,而我的那位同事也成了那位面试者最坚定的支持者。在过去的一年中,我从未见过这位同事如此强烈的支持哪位面试者。

所以,因此就算面试进展不顺,也务必坚持到底不要放弃。

3.在面试过程中不要失礼

这似乎是不用说的问题,但在面试过程中我确实碰到过影响很不好的失礼行为。曾有一位前来应聘软件工程师的人看到我就说:“哇,我真不敢相信你这么年轻!你看上去好小!!我觉得你才 18 岁!”

面试者的这种言行实在要不得。

面试者也要注意不要说出诸如此类的话:“哇,你真的就是考官吗?你看上去好老!”“哇,你真的是来面试我的,你看上去好胖!”(相信应该不会有人说这样的话)。

在我的另外一次面试中,应聘者的手机在面试开始 15 分钟之后就响了,她没有理会,手机连续响了 20 秒,这样不免会对面试造成影响。5 分钟之后,她的手机又响了,她依然没有理会;5分钟之后,手机第三次响起。最后她终于抓过手提包在里面翻出了手机。我想:“是时候关掉手机了,她在进来之前就应该把手机关掉。”但是她在手提包中拿出手机之后却旁若无人的打起电话来,而且就在面试过程中间!

这种情况唯一可接受的理由就是他有什么非常紧急的事,但是即便情况如此,那么他也应该在面试开始之时就讲清楚,让面试官有所准备。

4.不要在面试中喧宾夺主

我曾经面试过几个应聘者,他们好像铁了心肠一定要告诉我他们最近的“超级项目”。当我开始发话他们就立刻打断:“我想让你了解我们近期处理的超级项目,10年之前当这个项目开始之时还默默无闻……”,然后接下来的5分钟时间都在那里滔滔不绝唾沫横飞。

有时应聘者好像打定主意要给每个考官详细描述其引以为豪的项目,然后一整天都在那里翻来覆去的说这个项目。

记住:面试官在面试过程中有具体的问题需要询问。但是如果应聘者喧宾夺主,那么考官就可能无法获得充分的信息来做出判断,同时这种行为也会让考官觉得应聘者很难共事。

如果你确实想谈论自己的项目,那么就应询问面试官:“我觉得最近的某某项目能充分体现我的能力,我能不能用 10分钟的时间来描述一下具体情况?”这样就会给面试官空间来调整面试过程,由此也避免毫无征兆就让面试离题万里。

5.在回答需要具体答案的问题之时,记得首先要有总括性的发言

有时我会问一个答案可以很简练的问题,例如:“在你的那个成功项目中总共有多少人参与?”但应聘者往往会就此打开话匣:“恩,张三参与了这个项目,他负责 UI部分,当然我也会给他一些指导。李四也在项目中,她在宾州远程工作,负责后端服务器。两年之后我们又有新人王五加入……”

在应聘者滔滔不绝的讲了三分钟之后,我还是不知道这个项目到底有多少人参与。

因此首先要简练的回答问题,然后再展开描述:“在我接手项目时有三个人,但当我离开项目时人数已经增加到12人。”

当然如果能简练的回答问题,然后征询意见之后再展开论述那就更好了:“在我接手项目时有三个人,但当我离开项目时人数已经增加到 12 人。我可以讲一下各人在项目中的具体分工吗?”

6.(不是特别重要)在面试中要衣着得体,舒适的商务便装是最佳的选择

人们有时候会为衣着犯愁。但是最重要的是要让自己感觉舒适。如果需要具体的建议,那么我建议穿衬衫甚至T恤衫。对于某些公司(例如 Google),西装革履显然是太隆重了。

这条建议不必太看中,因为面试官不会管应聘者穿什么。最好应该询问人事招聘部门穿什么合适,因为不同国家有不同习俗,就算美国东海岸和西海岸的公司着装文化也会有差别。像 Google 这样的公司在着装方面更加随意,因此如果你穿着“三件套”的经典西服去 Google 面试,考官可能会有异样的感觉。因此如果你真的具备软件工程的本领,穿什么其实并不重要。某个应聘者曾经穿着皱巴巴脏兮兮的T恤就跑来面试,他的T恤衫上还有着许多破洞。但最后他还是拿到了录取通知(当然我绝不建议如此穿着)。

最后的一个小故事

最后我想讲一场极为尴尬的面试。在看完之后,我希望你能这样想:无论你的面试如何糟糕,你至少要比这位应聘者幸运。

以前我还在微软的时候,我们通常会为应聘者准备一些饮料,某位暂称其为 Jeff 的应聘者要了一听百事可乐。我们走进面试房间后,他就在桌前坐下了。接下来我们简要的谈了谈他的工作经历,然后他开始在白板上解答编程问题,此时他还没有打开他的可乐。

我们俩站在白板前,然后杰夫开始在上面写程序。在写程序之时他沉浸在对整体构架的思考中,下意识的退了一步来查看整个白板。在后退时他不小心碰到了桌子,放在桌上的百事可乐掉到了地上。

因为可乐还没有打开,因此当可乐罐落地的时候,可乐罐炸开了。

可乐罐在地上打转,泡沫喷的到处都是。你可以想象当时的场景,可乐喷到了墙上、书架还有我电脑的键盘上。我俩楞在那里,手都半伸着(根本来不及抓到可乐罐),眼睁睁的看着可乐弄得到处都是。

我们花了 5 分钟的时间用纸巾来清理现场(虽然我的书本自那天之后都粘页了,而墙壁也不再是干净的了)。

随后我们重新开始白板测试。杰夫此时已非常紧张(换了谁都会紧张吧?)。他写了几行程序,然后擦掉,然后再写。他是用自己的手擦拭白板而不是用板刷。他急得额头冒汗,然后他又用刚刚擦过白板的手擦汗。在面试过程结束之时,他的脸上布满了红色、绿色和蓝色的颜料。

我说:“你的手上粘了很多颜料,我带你去卫生间洗洗吧,”然后我把他领到洗手间让他从镜中看到了自己的尊容。

王忻的其它文章:
如何写一份好的工程师简历
我对女性做工程师的一点看法

星期六, 十月 21, 2006

IBM面试的内容

面试官)您自己怎么规划自己的职业呢?
应聘者)我现在因为马上就要面临毕业嘛,因为本科也学计算机,我觉得将来就是希望
一开始就进入一个以IT为主的公司,就象IBM、Intel这些主要是搞IT的,这样的话对自己
的能力也是一种锻炼嘛,最好进入一个相对是较大的公司。
面试官)以后不会想去做经理,去做管理什么的?
应聘者)一开始不会,一开始我肯定是从……我想过个几年我可能会。
面试官)会不会想要去创业?现在非常流行。
应聘者)创业我也想过,我和同学也经常讨论,万一说这种大公司进不去,我想一毕业
就去创业,难度比较大。
面试官)其实创业的难度不是很大,创业的关键问题是在于你愿意不愿意做那样的工作
和你愿意不愿意去接受创业里面的一些东西,这个非常重要。
应聘者)我觉得这是一种积累的过程。
面试官)很多人都说创业是一种积累的过程,创业需要机会,创业需要好的点子,还有
人说要有人脉的关系,还要有很多管理的能力……人们都说得玄而又玄,但其实讲穿了,
创业其实是很简单的,举例来讲,河南的生梨卖到上海价格可以翻一倍,但是很多人不愿
意去做这种事情,为什么?你去贩卖生梨干什么?对不对?很多人不愿意放下身段改变自
己的兴趣爱好。去马路边开一个馄饨摊子挺赚钱,但是不是人人都愿意去做这种事情哦。
创业其实并不难。
应聘者)如果要从头起步,那种传统的买卖可能不难,但是我觉得毕竟学了七年的IT更
希望是从事IT,这一领域要比别的门槛高一些。
面试官)虽然高,但是它和卖馄饨、卖生梨非常相通的一点就是有没有给别人带来帮助
,这是整个创业里面核心的一个问题。也就是说我们卖馄饨和卖电脑没有什么两样,它们
都要解决人们生活或工作的需要。编程序和卖生梨,或者提供快递服务也没有什么两样,
但关键的一点是你有没有帮助到有需求的顾客,有没有给顾客带来价值。
应聘者)关键是……最开始我觉得关键要让客户相信你会给他带来利益。
面试官)哪怕一开始你给顾客白做,证明你的能力,证明你的效益。其实你如果帮不到
你的顾客,还去收顾客的钱,那跟抢劫也没有什么两样,对不对?我帮不到你,但是我帮
你辛辛苦苦编了五天,给钱吧!那顾客说,我要你干什么?有没有想过一个问题,我想听
听你是怎么回答。如果哪天你已经很有钱,你已经没有经济上的压力,或者是说你并不用
因为经济上的原因被迫地去做什么事情,你完全可以自由地选择自己喜欢做的事情去做,
那时候你会去做什么?
应聘者)那时候我就会去想……或者是……
面试官)您有没有什么明确的目标或者是什么事情仅仅是因为经济上的困扰而不能去做的?
应聘者)我比较感兴趣去做……我不知道你是指事业上的还是说生活方面的?
面试官)有什么两样吗?
应聘者)事业可能说……事业方面你会更专注于某个领域,将来你有钱了你肯定会去……
比如说,你自己去创业,做自己感兴趣的事情,开一家IT公司。
面试官)您说您有钱了会去开一家IT公司,为什么一定要自己做老板呢?
应聘者)因为……首先你自己做老板的话,你自己感兴趣的东西你可以去做,就像前面
所说的那样。
面试官)是不是在公司打工时就会被分派自己不感兴趣的事情呢?
应聘者)打工的时候很有可能被分去做自己不喜欢的事情。
面试官)您怎么知道创业了您就不会被顾客逼着去做你不喜欢的事情呢?
应聘者)前提不是说不会被生活所困扰吗?
面试官)是,您已经不会被生活所困扰了,为什么在打工时还会被人逼着做你不喜欢的
事情呢?
应聘者)就是……您的前提是说,首先我很有钱了,我就打算搞个IT公司。
面试官)为什么要去做老板,为什么不去打工?去做职业经理人?为什么要去自己开公司?
应聘者)因为打工做经理,总觉得好像是属于那种上下级的关系……
面试官)不喜欢上下级的关系?
应聘者)不是说不喜欢……
面试官)那为什么上下级的关系对您是一种困扰呢?
应聘者)不是困扰,就是我更有钱,我更希望自己控制自己去做感兴趣的事情。就是说在
公司里边可能,当然就是说,与IT相关的事情我会去做,但就是说……毕竟是自由度没
有自己开公司这么大。
面试官)您已经被您的兴趣所控制,被您的欲望所控制了。
应聘者)被兴趣控制了,我觉得并不是一件坏事,而且是一件好事。
面试官)那你为什么就不能在公司中非常有兴趣地为领导服务呢?
应聘者)我为领导服务那是肯定的。就是说,可能有的时候你会被领导分派一些你并不
喜欢的事情。
面试官)公司一开始往往会被市场逼迫去做你并不喜欢的事情,这两者没有什么差异。

应聘者)如果开公司,我觉得还是要做自己感兴趣的那一块。一开始可能会为市场所左
右,但我觉得慢慢地你做好了的话,只专注于你感兴趣的那一块,然后你在这一块里有所
建树,或者是打出名气或者知名度,那么就比较容易了。
面试官)想象一下,象我一样在某一家公司工作,打工就是一种创业。我不知道您是否赞
同这种观念,象您可能没有打过工,所以并不知道创业和打工有什么差异。比如说,我是
Frank,我在IBM公司工作,相当于我开了一个一个人的公司,就叫Frank工作室好了,我这
家公司就我一个人。我的顾客只有一个,目前只有一个,就是IBM,IBM购买我的服务,她
把付给我这家公司服务费称作薪资。当然周围还有很多与我竞争的同事,就象我开公司也
会有许多同领域竞争的公司一样,做跟我一样的工作的公司。
应聘者)您的意思就是说,工作也是一种创业?我一开始因为没有工作过,我的想法就是
创业就是做老板。
面试官)你已经做老板了,你不觉得你已经是自己那个公司的老板了吗?
应聘者)因为我没有在很大的公司工作过,所以没有这种思想。
面试官)公司的大和小没有关系。
应聘者)大公司和小公司还是有点区别的。小公司,它项目不多,业务领域不多,可能局
限于老板让你做什么,你就做什么。
面试官)领导就是你的顾客,顾客让你做哪一块,你没有选择。你自己开公司也是一样的。
应聘者)不是,就是说,你们IBM……就是那种大公司可能会考虑你的兴趣爱好所在吧,能
够把你分派到你感兴趣的工作岗位上。在小公司工作更有一种被强迫的感觉。
面试官)即使开一家自己的公司,刚开始的时候几乎都是被强迫,想象一下这些问题:资
金不够,场地要费用,员工期望高薪高福利,竞争对手的压制,被市场变化弄得晕头转向
,你想要赚钱,难道你就没有被强迫的感觉吗?工作一开始也被强迫,为什么?因为你要
经济独立,你要养活自己,你要尽快摆脱父母的抚养。你要买房子,你要谈恋爱,你要结
婚,你要生孩子,总而言之,你要钱。你要工作去赚钱,是不是要被强迫?所以无论自己
开公司还是打工一开始都会被强迫,我看不出一开始自己开公司和去打工有什么根本的差
异。如果你工作二十年,你还是领导强迫你去做工作,或者你开公司二十年,你还没有找
到自己的定位,无论打工和开公司,你都是失败者。懂我的意思?我看不出你为什么一定
要做老板。除非你有什么明确的理由能说服我,你为什么要做老板。你已经决定自己的命
运了,你开了一个一个人的公司,现在你的问题是如何把它经营好,创出自己的品牌,拓
展自己的服务领域和从被迫转变成自己主动选择自己的工作。
应聘者)我觉得你如果自己开公司,步入正轨之后吧……
面试官)你想想你的工作步入正轨以后……
应聘者)步入正轨无论怎样还是在给别人打工……
面试官)开公司无论如何也是在为别人打工,因为你必须要卖服务或者商品给顾客,任何
付你钱的人,你都要为他服务,你可以不赚钱,你决定不赚钱,你就可以不用为他打工。
Okey,你在单位里也一样。我不要你的工资,你就可以决定不用为他服务。
应聘者)可能我的观念与你有些不太一样,我总觉得开公司命运是掌握在我自己手里。

面试官)可是你今天已经开公司了,没人在控制你的命运,right?没人决定你要去找什么
样的工作,没人决定你一定要去开公司还是要去打工。命运今天已经掌握在你的手里。即
使你决定去打工,仍然你会决定打什么工,是不是继续做下去,是不是干自己喜欢的东西
,要去学习什么,要去追求什么。你已经掌握了你的命运,right?
应聘者)工作的时候,你没有完全掌握你的命运,你必须先把工作做完。
面试官)创业也一样,开公司也一样。你必须要把自己的工作做完,顾客才愿意付钱给你
。然后你才能去考虑其它的业务。
应聘者)这个还是有点区别的。
面试官)告诉我区别在哪里。
应聘者)你给别人打工,你首先领导给你的任务你先要做完,然后才有空你去做你自己感
兴趣的事情。
面试官)开公司也一样,顾客交待的任务做完了,你才有空去拓展自己公司的领域。
应聘者)做公司的话,首先一开始肯定是这样的,被市场所左右。
面试官)打工也一样,一开始一定被人分派做事情,等到你慢慢到达一个位置,想想我们
以前的总裁郭士纳,他也是一个打工者,谁分派工作给他?他自己要决定怎么做。IBM公司
的总裁周伟焜先生,我相信他会决定怎样经营中国公司,虽然他是一个打工者。
应聘者)……这个打工者就是说,已经有自己可以控制的一块领域了。
面试官)为什么不去做这样的人呢?我的意思是说,打工可以做到这么高的成就,难道比
自己开公司还差劲吗?
应聘者)不是,打工你要做到这么高的成就,你肯定得通过十几年、二十几年慢慢地干出来。
面试官)难道你认为创业一定能够一下子成功吗也?今天许多多人想的都是如何获得暴利
,希望一夜暴富,开公司,总是想着如何快速地去骗取顾客的钱吗?
应聘者)因为前提是我已经不会被生活所困扰。首先我们必须有诚信,不能骗顾客一笔钱
,却没有提供服务,那样子这家公司肯定完蛋。所以说,你一开始不一定很赚钱,但你一
定要通过诚信走上正轨。一旦上了正轨,我完全可以让我这家公司在我自己哪块发展。
面试官)为什么打工就不能决定自己在哪块领域发展呢?即使眼前的领域我不喜欢,我完
全可以辞职,去做自己喜欢的领域。
应聘者)你把现在做的工作给放弃了,还得自己去找别的工作,你还得看别人的脸色。

面试官)你永远都要看顾客的脸色。你自己开公司,你要永远看市场的脸色。你不可能摆
脱我为别人服务这个角色。理解吗?你打工也不能摆脱这个角色。
应聘者)可能……打工你要看领导的脸色。
面试官)是。开公司要看市场的脸色。领导就是你的顾客,顾客就是你的市场。
应聘者)我总觉得……
面试官)你不要总觉得,我希望你能够客观地陈述有什么差异。你刚才所说的差异我已经
讲过,不成立。
应聘者)是不是开公司可以去尝试新的东西?
面试官)你永远都可以去尝试新的东西。打工,这个工作你不喜欢你可以离开(辞职),
你永远有机会去尝试新的工作。
应聘者)这样子,我离开之前可能会有所顾虑。
面试官)为什么?
应聘者)就是说,我去做那个领域,就是说……万一我这个工作辞了,新的领域我又进不
去怎么办呢?就是说可能会有那方面的顾虑,因为毕竟原来的工作可能更稳定一些。
面试官)是。
应聘者)你去跳槽的话,很多东西你要重新开始。
面试官)从我自己的理念,打工和创业只有两个本质的差异。一个叫做有机会去创造一个
职位。也就是说,你喜欢做什么事情,但你发现目前去寻求工作你找不到,或者别人不接
受你去做你喜欢的事情,怎么办?自己创造一个工作,创造一个机会,自己做公司,我自
己做首席什么官,这是第一个本质的差异,这是目前比较流行的想法。第二个差异,是自
我价值的检验。例如说,我认定我的价值是十万元人民币一个月,但是找遍了许多职位都
没有人愿意发这样的薪资给我,因为我不能让人家相信,我应该拿这样的薪资,怎么办?
自己开公司,自己证明这一点。我都想象不出还有什么所谓更自由啦,不用看上级脸色的
差异。我都看不出还有什么其它的差异。你所讲的差异根本就不存在。
应聘者)我说还是存在的吧。
面试官)为什么?
应聘者)就是说,你开公司你有权利选择顾客。
面试官)你也有权利选择你的上级。这是我作为过来人可以与你分享的。你是不是有权利
选择你的顾客跟你的生存状态有关系,当你这个公司已经不介意这个顾客的时候,你才有
机会去选择。但这个顾客是否选择你,将要决定到你公司的生死存亡的时候,你没得选择
。如果是打工,当你自己有充分的地位和生存能力的时候,你也可以不介意上级,离开当
前的工作,你根本不用去介意。只有当这个工作对你很关键的时候,你要介意。这跟你公
司的生存状态或你自己的生存状态有关系。
应聘者)但我炒了他,我又得继续寻找我的工作。
面试官)你本来就在寻找你的工作,决定做什么工作,别人强迫你吗?你的兴趣所在是由
你自己决定的,你决定去做什么工作,腿长在你脚上,难道还有什么原因一定去做自己不
感兴趣的事情吗?只是一开始的时候由于经济上或者某种原因,又或者,你很喜欢一个漂
亮MM,与她在同一家公司工作,可以使你更容易追求到她,象唐伯虎追秋香一样。无论怎
么样,你总是应该决定自己去做什么样的工作,谈不上被迫。如果生活状况很好,不需要
去做自己不感兴趣的事情;或者公司生存很好,可以决定自己服务哪些顾客,不服务哪些
顾客。你所讲的差异是不成立的。在IBM公司工作有四个层次,这四个层次决定了你的人品
高下。第一层次就是“尽职尽责做好本职工作”,领导分派什么,就要做好什么,保证质
量,有责任感,哪怕有时候要加班加点,保证任务成功地完成。这是第一个层次,只能够
做到第一个层次的人,今天进入IBM是没有把握的。第二个层次是什么呢?是主动寻找和承
担工作,不要等上司跟你讲做什么,自己要去看,你还能帮领导帮团队做什么,还能够帮
助你的顾客做什么。不一定要得到命令该去做什么才去做什么,你自己睁开眼睛开动脑子
去想你还能做什么。你来到一家饭店吃饭,如果服务员还没有等你说“倒茶”,香茶已经沏
上了,你手脏了,她的热毛巾已经放在边上了,什么要求,你不用
去张嘴,服务员已经都帮你准备好了,你满意不满意?如果别人请你帮忙倒杯咖啡,你一
定要想要是否加上红糖和牛奶,是不是还要添一把小调羹?不用别人讲,自己去为别人考
虑,自己去做,自己决定去做什么,不要等到别人来分派什么,来给你压力,这叫第二层
次。第二层次也不能确保能够进入IBM。因为这种人虽然不是那么多,但是IBM所招聘的人更
少!你要去追求更高的层次,就是第三层次。第三层次是什么呢?分享和规范,什么意思
呢?你要帮助你周围的人,周围的同事,让他们能够做得跟你一样好。你将你做得那么好
的经验、方法规范化下来,标准化下来,使得人家很容易去做同样的事情,让人家可以做
得跟你一样好,这样你可以有机会去做更有挑战的事情。人们说,有个理论叫做“木桶理
论”,什么意思呢?一个木桶里能装的水,是由最短的那根木板决定的,而不是由最长的
那根木板决定的。即使一个人在团队中做到最长的那根木板,有什么用,整个团队并不会
因为你的提高而获得提高,你的任务是使得整个团队都获得提高。第三层次,Okey,可以
加入IBM,但是最厉害的是第四层次,第四层次的人为组织制定战略,为组织指出正确的前
进方向,第四层次的人的个人魅力会使得组织中的成员愿意追随,并
为之共同奋斗。如果你的能力达到了第四层次,那就不是能不能进入IBM的问题了,而是IB
M要求你加入了。在我们做Interview的时候有非常重要的一点,就是通过Interview评估你
的潜质未来是否有机会变成我们的领导者,希望加入进来的人不只是一个眼前的程序员,
而是通过培养,未来你会带领整个团队,作为我们的技术上或经营上的掌舵人、领导者,
我们把整个团队、整个部门、整个组织托付给你,放在你的肩膀上,你能不能挑得起来。
我讲这些的时候,我希望颠覆你原来打工的理念。你目前打工是被迫的,但是是很低层次
的。打工和开自己的公司在最高的层次是一样的,在最低的层次也是一样的。
应聘者)IBM把我们招进来,一开始是做程序员的……
面试官)是做软件工程师的。
应聘者)但是我一直有个问题,到了三、四十岁不可能每个人都有机会做团队的领导,那
个时候并没有那么多这样的职位,怎么办呢?
面试官)每个人通过若干年的工作以后,人生规划都会自己做相应的调整,重新地审视自
己更适合去做什么。很多人很可能,甚至在工作的头一两年就已经做了调整。你前面所说
的“并没有那么多的职位怎么办”,最后有几种方案,第一种,最简单,离开这里,这里
没有你的发展前途,我们自己去寻求变化。第二种,改变自己的目标,其实一直做工程师
也不错,尤其是我在IBM看见过一些头发花白的工程师。做工程师也有不同的level,你也
可以不断地提升自己到一个很高很高的level,也可以去做与IT标准和架构相关的东西,或
者去做项目管理的东西等等,有很多不同的道路可以走,可以一直做到很资深。第三种,
坚持到底,卧薪尝胆,不断磨砺自己的能力,直至机遇来临。
应聘者)IBM平时是不是有很多员工培训呢?这些员工培训是不是可以选择自己感兴趣的东
西呢?
面试官)你感兴趣的东西是什么呢?不是所有你感兴趣的东西都会在IBM获得培训,你必须
要做好这个思想准备。如果你感兴趣例如说中医药,那我们很少有可能会有这个方面的培
训。如果你很感兴趣做项目管理,这个是应该有机会的。如果你感兴趣的,和IBM希望你的
发展方向是一致的,则获得培训的机会就较大。原理上,管理层会很希望每个员工有自己
的兴趣和喜欢去做的事情,也很希望员工有自己明确的人生目标,这样才有机会可以双赢
:员工个人获得个人想要的东西,IBM获得IBM想要的东西。
应聘者)其实我还是想问一些有关人生规划的问题,我想你在这里工作了这么久,能不能
给我一些建议什么的?
面试官)最重要的建议有几点:要有自己明确的目标,迅速有效地行动,不要随便被某些
公司用高薪、高福利诱惑,而丧失了自己的目标和追求。当你获得一家公司高薪和高福利
工作的时候,其实你一定要给这家公司更高的回报作为交换。
应聘者)就是把眼光放远一点,看重将来的发展。
面试官)当你能创造更多的价值的时候,你一定能获得更高的薪资和福利待遇,而很多的
学生一开始会被眼前的高薪和高福利所诱惑。当然,那些比较差的公司需求人才的时候,
一定会加码。但是当你拿得多的时候,你一定需要为它创造价值,如果你的创造的价值小
于你所得到的种种利益,这家公司的经营就会有问题,不能持久经营下去。所以有些学生
因为某家公司的工资高而去了那家公司,完全忽视了自己是否能够为它创造超过自己薪资
待遇的价值。一定要知道,只有公平地交易,才是合理和能够持久的,不要去片面地追求
高收入或者高福利,如果不能使自己在这家公司的价值匹配你所获得的报酬,那就是你在
强抢这家公司的财产。
应聘者)我在网上或者也有很多人告诉我IBM是一个非常人性化的公司。
面试官)人性化是你对这家公司的看法,但原理上跟你个人的人生目标没有什么关系。你
准备去做一个什么样的人,你准备要解决社会上什么样的问题,你自己要去回答这些问题
,跟IBM是不是人性化,IBM是不是照顾员工,都没有什么关系。
应聘者)但是如果在IBM,就能为我们创造更好的发展环境……
面试官)但是你一定要知道你朝哪边去发展,你是要变成一个社会工作者,或者想变成一
个什么样不一定跟IBM有关系的那种职业或者说要去解决的问题不是IBM领域的,比方说,
你现在想去徐家汇是你的目标的话,你就不应该乘车去五角场,哪怕去五角场的这辆车子
再豪华再舒适,它也不是你要搭乘的。
应聘者)关键是要自己的方向上,然后如果它正合适的话,我就会选择它。
面试官)是。而且往往人生目标也不需要一定要搭乘一辆车子,你可能是说那家公司做了
一阵子,掌握了某一些技巧,达到了阶段性的目标之后,还可以再换乘一辆车子,直到达
到最终目标,就象先到宛平南路肇嘉浜路,再到徐家汇也可以一样,但是不要绕远路先到
五角场,那是浪费时间。这个要点是你要知道你要去哪里,然后再决定怎么到达一样。很
多人没有目标,所以他们随便搭什么车子都可以,只要不要被晃得掉下来,——很多人都
是这样子过的。
应聘者)其实我觉得既然是搞计算机方面的,如果是能够进入像IBM这样的好公司对我这个
方向还是非常非常必要的。
面试官)了解这种想法,但是如果有更清晰的目标的话可能会帮助你更加快地到达成功。
很多人都说好,问题是并不确认好在哪里,有什么关系。比如要学习网络工程,可能某些
方面思科会比IBM更好一些,如果是家用软件方面,可能IBM也不是这方面的老大。
应聘者)但我觉得很难有人那么明确地说,“我现在在这里,我一定要到达那里”这么明
确,家用软件或网络工程,我都不能确认这个一定适合我,我就是我不伸手下去做这个东
西,我不会知道这个真正适合自己。
面试官)这是因为自己还没有目标的时候,随便走哪一条道路都谈不上正确或不正确。当
应聘者)那样是不是还是需要先有一段经历的过程,然后才能够明确目标呢?
面试官)可以花上一段时间工作例如说一、两年,了解自己真正想要什么,也可以继续念
书念研究生,同时思考自己的人生规划。其实如果你已经有明确的目标了,就得抓紧时间
实施,选择最短最快最有效率的方法去行动去来。花费时间去学习研究那些相对次要的东
西就意味你就减少时间花费在那些更关键、优先级更高的事情上。举例来讲,如果你想成
为一名优秀律师,那法律相关的知识就显得尤其重要,而花费时间去学习计算机,就相对
次要了,这就有机会成本的问题,你做了一件事,就没有时间去做另一件事,所以必须要
走捷径。有目标的时候,要赶紧行动。
应聘者)IBM给我们学生实习机会,是为了什么呢?
面试官)一个是解决项目中人手短缺的问题,也就是有些时候项目的工作量大到需要额外
的人才来弥补人手短缺的问题;另外一个也是希望从实习过程中发现和考验一些学生的能
力,将一些优秀的人才优先吸收进IBM。这是实习的两个非常关键的目标。希望你在IBM工
作会找到自己的明确目标,并能从工作中提升自己的价值,和IBM共同成长。