无我编程的十条戒律

无我编程的十条戒律,最早出现在Gerald Weinberg于1971年出版的经典著作《程序开发心理学》里。Stack Overflow网站的联合创始人Jeff Atwood在博客上再次列出了这十条戒律。

“无我编程”发生在开发阶段,表现为技术团队经常通过同级评审的方式来发现软件中的缺陷。目的是让所有人(包括作者)都参与寻找缺陷,而不是证明软件产品里没有缺陷。人们会交换各自手上的代码,相互进行评审,并且大家都有这样的共识:代码的原始作者会犯错误,而作为评审者,他们会找出这些错误。最后的结果是,每个人都从自己的错误以及别人的错误里有所长进。这就是“无我编程”的由来。

无我编程的十条戒律,最早出现在由Gerald Weinberg于1971年出版的经典著作《程序开发心理学》里。Stack Overflow网站的联合创始人Jeff Atwood在博客上再次列出了这十条戒律。要知道,在这本著作出版的时候,Jeff才一岁。虽然已经过去了几十年,但这些原则并没有被时间侵蚀,仍然值得每一位程序员拜读。

  1. 接受自己会犯错的事实。关键是要在错误进入到生产环境之前把它们找出来。所幸的是,除了小部分在喷气推进实验室里开发火箭制导系统的程序员,大部分错误都不会造成致命的后果。所以,我们一定能够而且也应该要学会嫣然一笑,然后继续。
  2. 不要使用代码来针对个人。要记住,代码评审的目的是为了找出问题,而且总归会找到问题。如果真的找到了问题,请不要把它作为针对个人的借口。
  3. 不管你知道多少“秘籍”,总有人比你知道得更多。如果你开口,他们就会教你更多的东西。在你认为没有必要的时候,学会接受他人的建议。
  4. 不要不经讨论地重写代码。“修复代码”与“重写代码”是有明显的区别的。了解这些区别,并在代码评审的框架之内进行程式化的变更,而不是单独作战。
  5. 尊重比你懂得少的人,并对他们抱以耐心。与技术人员打交道的非技术人员认为技术人员要么是妄自尊大的讨厌鬼,要么是爱撂挑子的倔驴。所以,我们不要用我们的愤怒和不耐烦去加深他们对我们的这种印象
  6. 这个世界唯一不变的就是变化。敞开胸怀,面带微笑地去拥抱变化。把每一个需求变更、平台变更或工具变更都看成是一个新的挑战,而不是令人厌恶的麻烦。
  7. 真正的权威来自于知识,而不是职位。知识造就了权威,而权威会迎来尊重。如果你想要在一个无我的环境里得到尊重,那么充实你的知识吧。
  8. 坚定你的立场,优雅地接受挑战。要知道,你的想法有时候会遭到反对。你可以证明自己是对的,但不要试图报复,不要总是叫嚷着“我早就说过”,不要把被否定的想法看成是一个牺牲品或者某种战斗口号
  9. 不要成为“小黑屋里的人”。不要躲在小黑屋里写代码,就算偶尔露个面,也只是为了买一杯可乐。躲在小黑屋里只会让你与其他人失去联系,淡出他们的视野,失去控制。在一个开放的协作环境里,你会找不到自己的位置
  10. 批评代码,而不是人。对人好一点,而不是代码。让你所有的评审为代码带来积极的改进,把你的评审与局部标准、程序规范和更好的性能结合在一起。

 

来源: 无我编程的十条戒律

耶鲁教授:为什么有些世界一流大学不爱招中国学生?

来源: 耶鲁教授:为什么有些世界一流大学不爱招中国学生?

耶鲁教授:为什么有些世界一流大学不爱招中国学生?
中国人有天赋,又勤奋,可是为什么世界一流大学开始不爱招中国学生了?耶鲁大学教授陈志武分析了原因。这些年看到这么多从国内培养出来的杰出高材生,他们在专业上这么突出,但思维方式那么僵化、偏执,社会交往能力又那么差,除了自己狭窄的专业就不知道怎么跟人打交道、怎么表达自己,让我非常痛心。这些问题的根子都出在教育上,包括正式的学校教育、家教和社会文化教育。
为什么世界一流大学不爱招中国学生?
作者:陈志武
有两件事再次引发了我对中国教育的担忧。
一个是,跟一位美国名牌大学金融教授谈博士研究生招生政策时,他说他们今后可能不再招收中国博士研究生了。
这不是种族歧视问题,他自己也是中国人,而是因为过去多年的中国学生,开始学习成绩都好,后来做博士论文研究时虽然未必突出,但还可以,可是等到毕业上学术市场找教职岗位时,表现都不好,没办法找到一流大学教职。所以,他们不想再浪费时间培养中国学生了。
实际上,不只是他们大学有这个打算,我所在的耶鲁和其他大学,也讨论过同样的问题。虽然我们没有决定完全停招中国学生,但有意识地少招或者偶尔不招。
以2015年为例,美国的前30名金融系毕业的博士中,来自中国的不少,但找教职岗位最成功的是去了加州理工学院,那个大学当然不错,可是,这么多中国博士生中没有一个被前10名或前15名金融系招聘。
由于这些博士都毕业于顶尖金融院系,这一结果很让人失望,各学校投入的资源和教授精力那么多,并没有得到相应的回报。
第二是,在美国金融和硅谷高科技行业中,印度裔高管远超华裔。
大家熟悉的谷歌、微软、Adobe、软银、花旗集团等公司的CEO都是印度人,在这种级别的美国公司中似乎想不起一个中国人CEO。公司副总裁一级的印度人就更多了。
而且,不只是美国企业界里中国人和印度人的反差这么大,在大学里也如此。比如,几年前美国主要商学院中,有12个在选拔招聘商学院院长,其中有10个给了印度裔聘书,没有一个给中国裔。尽管后来一些印度裔谢绝了,但这本身也反映出中国和印度之间在教育、文化上的差距。
中国人天赋好,又聪明勤奋,但为什么结果会如此令人失望,跟美国、印度和其他国家的人差别那么大呢?
答案主要在两方面:一是教育理念、教育方法,包括中国父母对子女的养育方式;另一方面是与中国文化鼓励“听话”“顺从”紧密相关,这些文化烙印实际上是中国人一辈子的包袱,走到哪里都无法丢掉,到哪里都吃亏。
先谈教育
张三(匿名)出生于国内某大城市,高中毕业轻松考上北大清华这样的国内顶尖名校,等他到耶鲁读博士时,哪怕再难的数理经济模型对他来说都太容易。在我的博士生课堂上,他毫无疑问一直是最优秀的,即使在耶鲁这样的世界各地天才汇聚的地方,他的聪明才华照样遥遥领先。
可两年后的一天,正当他全力以赴深入做研究而且已经有出色成果的时候,张三找我私聊,说他在考虑是否退学回国去做PE投资基金,因为他父母好友愿意出资5000万美元由他去负责管理,机会难得。
我问他:“你的天赋如此出色,我一直认为你最有希望出类拔萃,出一流学术成就。告诉我,你是否真的对学术研究、学术生涯有兴趣、有激情?”
多年的经历让我清楚,一个人如果对他从事的工作没兴趣、无激情,尤其当他做的是学术研究时,那么,要他做好、要他做出别人想不到的创造性成绩,那等于是赶鸭子上架,难!每天做自己没兴趣的事情,只会是应付,不会钻进去的,那样他自己也会痛苦、很累。
张三回答说:“对学术研究谈不上有兴趣。我可以做,也可以写学术论文,但这不是我的兴趣与激情所在。”这下好了,我跟同事原来期许厚望的博士生,对我们的专业也就是如此。我接着问他:“那你为什么要申请金融博士研究生呢?”他的回答不奇怪:“因为父母要我这样做,而且看到其他同学都这样做。”
很多年来教过的中国学生中,真正因为自己喜欢而研读经济学、金融学的是极少数,绝大多数是因为父母的压力和安排。
既然他们都不是因为自己真实的兴趣而为,出现上面我们谈到的,那么多读金融博士、经济学博士的中国学生最后在职场上表现一般甚至较差,就不足为奇。赶鸭子也许可以上架,但上不了高架的。
我见过的很多父母可能从来没有问过,更没有想过“什么是最好的学校”“什么是最好的教育”。学过优化理论的人都知道,“好”“不好”“较好”“最好”这些价值判断都只能是相对的,必须首先搞清楚的是“相对于谁”“相对于什么”,因为不存在没有度量指标、没有参照系的“好”和“最好”。
很多人往往是根据父母自己认为“好”的标准去选择“最好”的学校和专业,等于让子女去过一种父母认为好但子女自己未必认为好的职业和生活。有时候,这实际上是迫使子女去实现父母自己没有能实现的专业梦。
有得人是随大流,去追求大家都认为最好的哈佛、耶鲁或者北大、清华。如果你问他们“为什么哈佛耶鲁好、北大清华好”时,他们也说不上来。
好与不好,只有基于子女的个人兴趣、偏好、个性和天赋才有意义。
否则,不仅没有意义,而且很容易造成天赋与人才的浪费,结果只会是子女学习、工作没有热情,无精打采,每天因为在做自己没有感觉的学习或工作而特别累,而且会时常抱怨,对生活、工作失去兴趣。
在任何社会中,人才资源是各项资源中最为重要的,因此,把每个人的兴趣和天赋跟其专业尽量配置得一致,是整个经济中最为关键的一部分,也是决定一个国家整体资源配置效率的最关键因素。
我们想象一下:一个社会中,每个人都在做自己并没有兴趣但为了养家糊口又不得不做的事,而且每件工作都是由那些并没有兴趣的人在做;在另一个社会里,每个人都选择做自己有激情的事情,而且每份工作都是由对其有兴趣的人在做。那么,这两个社会中,哪个社会的整体幸福感更高、效率和创造力也更高呢?

不同文化背景导致了中国人和印度人的不同表现
“耶鲁校长理查德·莱文也曾提出学习的用途,并不是为了自己的职业,而是追寻自己的价值。
理查德·莱文(Richard Charles Levin)是享誉全球的教育家,曾在1993至2013年任耶鲁大学校长,上一位任满20年耶鲁校长的还是1899年就任的亚瑟·哈德利(Arthur Twining Hadley)。
理查德·莱文曾说过:如果一个学生从耶鲁大学毕业后,居然拥有了某种很专业的知识和技能,这是耶鲁教育最大的失败。因为,他认为,专业的知识和技能,是学生们根据自己的意愿,在大学毕业后才需要去学习和掌握的东西,那不是耶鲁大学教育的任务。
那大学教育有什么用呢?
理查德·莱文在他的演讲集《大学的工作》(《The Work of the University》)中这样提到,耶鲁致力于领袖人物的培养。在莱文看来,本科教育的核心是通识,是培养学生批判性独立思考的能力,并为终身学习打下基础。
通识教育的英文是,liberal education,即自由教育,是对心灵的自由滋养,其核心是——自由的精神、公民的责任、远大的志向。
自由地发挥个人潜质,自由地选择学习方向,不为功利所累,为生命的成长确定方向,为社会、为人类的进步做出贡献。
这,才是莱文心目中耶鲁教育的目的。
正如《大学的观念》(《The Idea of a University》)的作者约翰·纽曼(John Henry Newman)所说:“只有教育,才能使一个人对自己的观点和判断有清醒和自觉的认识,只有教育,才能令他阐明观点时有道理,表达时有说服力,鼓动时有力量。教育令他看世界的本来面目,切中要害,解开思绪的乱麻,识破似是而非的诡辩,撇开无关的细节。教育能让人信服地胜任任何职位,驾轻就熟地精通任何学科。”
职业和做人
下面这个故事很流行:一家硅谷公司招来三个实习生,分别是中国人、印度人和美国人。美国实习生只求把事情做完就好,一到下班立马走人。他对一些问题尽管一知半解但也能侃侃而谈,一分钟可以讲完的问题,能讲五分钟。中国实习生很努力,活干得最多最好,但不爱多说话。
印度实习生工作做得没有中国实习生精细,但也不差。虽然讲话带有口音,但最爱发问,擅长表达自己。在实习期间,学到东西最多的是中国实习生,但是,最后人们最能记住的是那位印度学生。
这个故事当然是中国人喜欢讲的,因为中国人看重“硬本事”、看轻“软本事”;按照这种我们熟悉的价值观,这个故事实际是想抬高中国人、贬低印度人,也包括贬低美国人,很符合中国人的口味。
但问题也恰恰出在这里,因为我们这种看重“硬本事”的文化取向造就了中国人只能干苦力活、不能像印度人那样在硅谷和美国大学等领域成为领袖人物;也正因为美国和印度社会既看重“硬本事”也看重“软本事”,所以,反馈到文化和教育领域,就变成了不只是要强调数理化,也要强调人文社会科学,在判断人才时不只是看他的硬技能,也看他的表达能力、沟通能力,看他是否是一个风趣的人。
比较极端的是,不少中国父母在子女好不容易到美国大学读书后,又偏偏要他们花大学四年学会计,这的确是“硬技术”,对找工作最便利。但是,他们没有想到,实际上中国会计规则跟美国不完全相同,学完美国会计规则,到了国内还要补课才能做会计。而且像会计这种职业性这么强的专业,根本不需要到美国大学去花钱学四年,在国内的技校就可以学到,然后在国内考会计资格,那样既省钱又更实用。
这些朋友说,他们担心子女毕业后不好找工作,会计好找工作。如果是这样,国内技校不是更好吗?而且,退一步讲,如果只是为了找工作,麦当劳不是有很多工作机会吗?
实际上,这里关键还是在于对“教育”的理解和认识问题。教育有两项主要功能:一是为了职业,一是为了做人,尤其是为了做一个有意思、有趣味、有意义的人。职业培养是为了饭碗,而“做人”的教育是为了让人不只是职业工具,而更重要的是做人。
许多朋友一听到自己子女想学历史、文学、艺术,或者心理学、政治学、社会学,就很生气,认为这些“软本事”没任何用,不便于找工作,等等。但是,他们不知道,这些“软本事”恰恰是使一个人更加有意思、有趣味的基础。
世界需要有“硬本事”的人,但世界是由那些能说会道、知识渊博的人领导的。即使我们走出企业领导、政府领导阶层,在社会生活中,那些除了职业以外还了解我们历史、社会、政治和经济是怎么来的人也是更加有趣的人,同时更可能是社会中的成功人士。
随着互联网资源的丰富膨胀,各类专业技术通过谷歌随时随地可以查到,获得“硬本事”的方式可以是技校、大学,也可以是通过上网就行。所以,“硬本事”的相对价值在降低。但,全球一体化的社会对于软知识、软本事的需求比以前大增。
在这样的背景下,如果中国人不在“软本事”方面追赶美国和印度,我们可能只能继续以苦力活、以低利润活为主,而高利润、高收入的工作则继续由美国和印度人控制。
就每个人的生活而言,从幼儿园到小学、中学和大学都应该强化通识教育,也是为了让自己能一辈子活到老幸福到老。通识教育不仅能让一个人增加“软本事”,而且还会让你接触了解各种不同学科领域的知识与研究,激发你方方面面的好奇心和兴趣。
一旦你对许多东西有好奇和兴趣后,一辈子中的不同时段总会有让你感兴趣、让你激动的追求和话题,不会过得枯燥,而会充实生命中每个阶段的生活内容,最大化一辈子的幸福感。

中国文化鼓励“听话”和“顺从”
之所以中国人跟美国人、印度人的差别这么大,也当然跟中国文化鼓励“听话”“顺从”紧密相关。在中国长大的过程中,父母等周边的人都教你“乖乖听话”、听长辈的话。不管走到哪里,只要见到比自己年长的,都要小声讲话,要顺从听话,不能挑战长者和权威的言论。
正因为从出生开始,二三十年之内,周边大多数人都比自己年长,都是自己必须要顺从听话的对象,所以,每个人在成长的二三十年里都会被驯化得乖乖的,没机会锻炼讲话辩论。长大后即使想学习辩论、学习作报告演讲技巧,也很难改变从小被迫养成的“听话不作声”习惯。
在中国,别人说“你的孩子好听话”是对你子女的表扬,父母也会因此而欣慰。而我在美国生活的30年里,从来没有听到美国人以这种话去夸奖人家孩子的,因为美国人会认为“听话”“顺从”是贬义,是没有个性的表现,因此,没有人愿意被这样评价的。
美国学校更注重学生思辨能力的培养看,正因为这种思辨能力的培养,现在我跟女儿讨论问题时,她们一听到任何话,很自然地就会去怀疑、审视,然后就看能否找到证据来证明这个话逻辑上或者事实上、数据上站不住脚。
这种习惯看起来简单,但是对于培养独立的思辨能力,让学生毕业以后,特别是大学毕业以后,不只是简单地听领导的话的机器,这些是非常重要的自然的开端。
当然,思辨对于美国教育体系培养出来的人是很自然的,有时候我也想,美国这个社会真的蛮有意思,不管是聪明的、还是笨的人,不管是有能力的、还是没有能力的人,每个人都觉得自己很厉害,每个人都觉得自己是个人物,对什么事都会有一番高论。
来源:新华每日电讯

无底洞

我走入了一个无底洞,一个专门为我设置的无底洞。我感觉我耗费十足的精力,也未必走得出来,又何况自己只有少之又少的精力和时间投入。

有渺茫的希望,这种责任担当,渺渺无期。我第一次从社会大人的视野去体验这种担当,这一刻,我才明白自己之前一直是小孩,即便我现在成年不久。

对未来,我尽力安排,不断变化计划安排以应对。只能走下去,扣问自己,实在找不到放弃的理由。无底洞也好,只要活着,即便再慢,我也想走出去看看。

2017-5-3 文摘

1.任何除了瓶颈之外的改进都是错觉。Any improvements made anywhere besides the bottleneck are an illusion.
2.过早优化是万恶之源Premature optimization is the root of all evil
在 97% 的时间里,我们应该忘记微不足道的效率:过早的优化是万恶之源。然而在关 键的 3%,我们不应该错过优化的机会。 —— Donald Knuth