April 2010


英文中形容词有比较级、最高级两种形式,遇到最高级,条件反射式的做法就是以“最”来翻译:best就是“最好”,worst就是“最糟”,highest就是“最高”,lowest就是“最低”……万变不离其宗,总之离不开“最”字。
这种现象正常吗?就我所知,著名翻译家思果先生曾提出,最高级不一定都要翻译成“最xx”,因为中文里“最”往往是唯一,而英文的最高级则可以加one of…之类的限定,“最xx之一”的说法,多少有点名不正、言不顺。
思果先生的做法,我有保留地赞成:最高级不一定都要翻译成“最xx”,但我的理由,并不是从“之一”出发的。

就我所知,英文里的最高级,是存在绝对最高级(absolute superlative)和相对最高级(relative superlative)之分的,前者通常不加冠词the,用来表示很高的程度(a high degree),大致等于very, very…,表达的并非“首屈一指”、“登峰造极”的意思,只是表示程度很高;后者则多加冠词,表示我们常说的“最高”、“最好”的本意。正因为最高级有这两种形式,翻译时一律采用“最xx”的译法,就不太妥当了。试看下面三个句子:

The scenery here is the most picturesque in this area.
The view from the mountain top was most picturesque.
It was a most picturesque scenery.

第一句的最高级是相对最高级,而后两句的最高级都是绝对最高级,所以,应当分别翻译为:

此处的风景是附近最漂亮的。
从山顶看到的风景非常美。
那是一片非常美丽的风景。

另外要补充一点,即便使用相对最高级,也可能遇到需要增强/减弱的情况,此处列出增强/减弱用法的中英文对应:

增强:
much/by far
He is much the brightest boy in our class.
他的确是我们班最聪明的学生。

减弱:
about/practically
He is practically the brightest boy in our class.
他可算我们班最优秀的学生。

时间在流逝,年龄在增长,我们的生活中,规律、克制的成分越来越多,电脑游戏,已经退化萎缩成偶尔偶尔出现的点缀,但是旧日记忆却终究无法忘却;譬如我,总无法忘记1995年那隔行抽色的动画——散发着神秘气息的绿色WESTWOOD,在水波纹里慢慢浮现,又慢慢漾开消失,记得当年一个叫卫易的专栏作家写过:我曾经无数次地戴着耳机奋战在深夜,只因为无法忍受没有音乐的C&C。

1998年的夏天,我在同学H的家里第一次见到了那个游戏,银光闪闪的战舰,喷出巨大的火舌,顷刻间,强櫓灰飞烟灭。他告诉我说,这是《星际争霸》。然后,就开始无止境的厮杀,我因为家里管得严,自己的电脑玩不了(当时用的486),多数时候只能短暂观摩;班上有几个同学,每天省下午饭钱,去学校后面的电脑房玩《星际》,若干次被学校领导抓住,拍下录像全校公开放映批评也在所不惜;同学X天资聪颖,负责帮老师收奥赛班的学费,每次上缴之前会先“挪用”了叫大家去一起玩,以后再东拼西凑出来交给老师(这就是原始的无息贷款啊);有一次上语文课,易老师说:你看你们这几个同学,肯定又是玩电脑去了,为什么呢?用一个词来行容,就是目光迷离…;当时网络很不发达,于是大家每个月争相去买各类游戏杂志,只为看上面的战报,结果我们第一次知道了有个加拿大小伙子叫GRRR,知道了克隆,如今看来朴实甚至粗陋的文字,总能勾起大家无尽的遐想……
之后上大学,CS兴起了,网络游戏(龙族、万王之王)兴起了,一小撮星际的爱好者只能在学校地理系(现在的城市与环境科学学院)机房里厮杀,我当时总在图书馆,看书累了就去玩两局,ID是1st……

毕业之后,就没玩任何电脑游戏了,即便公司有时为了沟通感情,组织大家玩CS,也只是敷衍敷衍;直到07年数字电视开通的那一天,我发现居然有个频道叫“游戏风云”,播放的是熟悉的星际的画面,于是往日的记忆瞬间就穿越了时间的距离……我清楚地记得,当时的演播环境还很原始,大师(大师是玩家对郁小刚的爱称,他因为对战术的深入把握,赢得了“泛亚太第一流的战术大师”的美誉)出场的时候,我们打趣说这是哪个网吧的老板,Alone(注:Alone是PLU的工作人员,常年坚持解说星际比赛,以插科打诨见长)到现场来,仍然穿着凉鞋,而导播居然没有注意……
2007,2008,2009,2010,这四年来,游戏仍然玩的极少,只是陆陆续续看了些《游戏风云》的节目,眼见节目逐渐有了自己的风格,细节也逐渐完善,有了冠名,有了定制服装,有了宣传动画;看到他们的每一点进步,我心里都很佩服:毕竟,这是没有人涉足过的领域,也是不确定性非常大的工作,但到底有人坚持了下来,难得的是,节目一直在成长。所以,面对2009 PLU星际第一人的决赛的门票,我毫不迟疑地买下了。

2010年4月18日,在上海华山路680号上戏剧院,我目睹了一场老男人的聚会,举目看去,大家的年龄都差不多。星际争霸,是专属于那个年龄段的记忆。

(more…)

我写过《以习惯对抗虚无》(https://www.lifesailor.me/archives/556.html),与朋友们聊天时也会谈到这类话题,认可道理的人不少,问题也不少:一方面,有些习惯确实“好”,但似乎“意义不够”,不能给人足够的激励去养成;另一方面,人到了某个年纪,似乎培养新习惯的难度太大,很难“说服”自己行动。是的,这问题确实存在,那么,该怎么办呢?

且让我从一个小例子说起吧。我小的时候,常去母亲的实验室玩(我父亲大学学的是无线电,母亲大学学的是化学,科研单位都有实验室)。那时候,我母亲实验室里最讨我喜欢的就是水银温度计了,细细长长的,上面有密密麻麻的刻度。把温度计放进冰箱,过会儿取出来,就可以看到水银柱嗖嗖地上涨……有一次,我毛手毛脚没有拿稳,温度计掉在地上打碎了,水银落地变成一颗颗的珠子,四散开来。我吓了一跳,心想肯定会挨骂了,连忙伸手去拈——不料,母亲大喊:千万不能碰。同时赶紧从药品柜里拿出一些黄色的粉末,撒在地上,并打开门窗,把我带出实验室,一边让我洗手,一边说:知道为什么不能去碰吗?因为水银是有毒的,用手去碰水银珠,呼吸水银蒸汽,都可能中毒,但是,水银如果遇到硫磺,就会发生化学反应变成硫化汞,就没有毒了;而且,我们还要打开门窗通风,让水银蒸气散发出去……
这么多年来,我一直记得那件小事,并且越来越感激我的母亲:她并没有呵斥我(对小孩来说,呵斥或许很“有效”,但产生同样的效果,有截然不同的方式),也没有一味让我走开由自己处理,而是妥善处理之后,给我讲解其中的道理。类似的事情,还有很多——遇到事情讲道理,尤其给小孩子讲道理的习惯,这习惯许多人会说“好”,但未必会实施(许多人说,讲的许多小孩子根本不懂,要学化学,还不如长大了送去补习班,而他们也正是这样做的);但因此,我却从小就知道,自然界的许多问题,最直接最“想当然”的办法,可能并不是有效的办法,因为背后有着复杂的关系,一定要弄懂原理,才可以动手,否则很可能把事情搞砸。

长大以后多懂了些知识,发现社会学研究也认可这个道理:一些习惯看似平淡无奇,其实好像玉米,从外面看什么也看不到,但我们把外皮一层层剥去,就能看到真正有价值的内涵,可是,要吃到玉米粒,离不开平淡无奇的玉米棒子。比如,在日常的交往中,第一次见面就记住他人的名字,平时友善地与人打招呼,虽然很难说“不好”,但对有些人来说却没什么意义:他们认为这或者是别有用心的算计,或者是毫无意义的走过场。但是我们深入思考就会发现,这些“并没有多少想法的仪式”,乃是人们互相承认对方存在的方式,承认一个人的存在,就意味着尊重他人的感情,从而给双方良好的感觉,巩固情感——从最极端的角度来说,人不能孤立于社会,绝大多数事情,都离不开人与人的交流、协作,自我孤立的结果,很可能一事无成。
再说远一点,养成良好的习惯,也能够因此内化对习惯背后价值的尊重。心理学研究告诉我们,人采取行动的动机,大致可以分为三类:服从(依靠权威和恐吓)、信任(效仿吸引他的人或事)、内化(自己内心真正认可)。服从是最不稳定的方式,权威不在了,行为就很可能改变;信任则相对稳定;内化则是最稳定的方式,我们把某种信念融入自己的价值体系之中,根深蒂固,从此以后,信念与它的来源就没有任何关系,而且非常难以改变。一旦行为成了习惯,就生长出足够的惯性,而且我们能“自然而然”去实施,同时,也就内化了它背后的信念,如果这习惯是良好的,那么,剥去皮的玉米已经被你牢牢地捧在怀里,难以夺走了。

这样看来,好的习惯“意义不够”的说法,是难以成立了——深远的意义,不是表面看来能够理解的;那么,怎样培养良好的习惯呢?非得要努力说服自己,采取坚决地态度(这确实很难),再行动吗?答案是:不一定。
行为和态度的关系,自古以来就有人讨论,争来争去,似乎总没有大家都认可的答案。现代心理学的调查发现,行为和态度之间,存在这微妙的共生关系:态度决定行为,但态度也依从行为。举例来说,每个国家,都有一系列仪式(升国旗、奏国歌等等),来强化公民对国家的感情(也就是态度),换句话说,公民对国家的行为,并不是由态度先验决定的,相反,倒是这一系列的行为,强化了他们的态度。其实这个道理并不新鲜,亚里士多德两千多年前就说过:“我们由于追求正义而变得正义,由于练习自我控制而能够自我控制,由于行为勇敢而变得勇敢”。它的运用更是广泛,比如,销售人员就会先请求客户作一个小小的承诺,来“明确”自己的态度,然后才展开游说,用专业术语来说,这叫“登门槛效应”——不要求你一步登堂入室,但终究会引你登堂入室。
养成良好的习惯也是这样。觉得自己的态度不够坚决,精神还不够强大,这不要紧;完全可以从小事情,一点一滴地做起,慢慢你会发现,“原来我能做”,“原来不需要那么绝对的态度,就能够开始”,让这样的感觉慢慢引导自己,让行为逐渐改变态度,进入良性的循环——实际上,这也是温伯格在《技术领导之路》里反复强调的:一夜之间改头换面是痛苦且不现实的,改变多是漫长的过程,潜移默化地到达最终的目的

上一章,我们通过Word中的“使用通配符”模式,粗略见识了正则表达式的使用方法。然而通配符并不等于正则表达式,遇到复杂的情况,通配符就力不从心了。所以从本章开始,我们来看“正宗”的正则表达式。

安装Regular Expression Tester

“工欲善其事,必先利其器”,学习正则表达式也是如此。尽管正则表达式的思想和规则是基本确定的,应用起来却有许多讲究(比如,在Java、C++、Python等不同的编程语言中,同一个表达式的具体写法是不同的,在Word、Excel等软件中也是这样)。所以,学习正则表达式最好采用“中立而规范”的工具——这有点像学习摄影,开始应该学习的是构图、用光,而不是尼康、佳能或索尼相机的特性。

本书中,我们采用Firefox的插件Regular Expression Tester(意思是“正则表达式测试工具”)来学习和讲解正则表达式,选择它的好处在于:不需要搭建编程语言环境(许多时候我们并不需要在编程语言中应用正则表达式);在Windows/Unix/Mac上都可以使用;并且支持大多数通用的正则表达式功能。如果你没有接触过它,也不用担心,下面我们介绍它的安装和使用。

(more…)

冠词(Article),中文里不存在,但英文中存在,而且随处都是,学过中学英语的人都知道,最常见的(估计也是最短的)单词a,就是冠词。按照维基百科(http://en.wikipedia.org/wiki/Article_%28grammar%29)的说法:

在使用冠词的语言中,除去例外,每一个普通名词在表达出来时都与一定程度的确定性(确定的或非确定的)相关,所以许多语言要给每一个名词加上一个特定的语法数量结构(单数或复数)。每一个名词都必须有冠词配合,如果冠词出现,则必然要对应到确定性,没有冠词(也就是所谓的“零冠词”)的结构本身也表示了某种确定性。形容词和限定词与此不同,它们通常不是必须的。因为具有这种强制性,所以冠词几乎成了许多语言中最常见的词

可见,冠词虽然是“许多语言中最常见的词”,但未必是出于“意义”,更多是出于语法的强制规定;结果,到翻译时,问题也就随之而来了:一种语言中最常见的词,在另一种语言中,不见得最常见。举个例子吧,“的”算是中文里很常见的词了,但谁看过中译英的文章里,到处都是“a of b”或是“a’s b”的?似乎没有,如果真有的话,那也只能说:这是典型的中式英语,不够地道。
同样的道理,英文中的冠词,虽然许多时候能对应到中文的数量词,但就中文本身来说,数量词出现的频率并不高,如果翻译时见到a就动用数量词,结果就很可能是这样:

…达芬奇是一个画家,也是一个科学家。
…请大家看墙上的这幅画。请问其中的这个人,他到底是一个男人呢,还是一个女人?
…对这个问题,一个热爱自由的人可能会说…,一个趋向保守的人可能会说…
…突然有人开始跑起来。在这一刻,他很可能是想起了与他的妻子有一场约会,而现在去赴约已经太迟了。别管什么理由,他在百老汇大街上向东跑去(或许是本想玛瑞莫参观,一个男人最喜欢与自己的妻子约会的地方)。另外一个人也开始跑起来,可能是一个心情不错的报童。有一个人,一个仪表堂堂的公务人员,也是一路小跑。在10分钟的时间里,从联合仓库到法院大楼,商业街上的每一个人都在跑。一声嘟囔逐渐成了一个可怕的词——“堤坝决口了!”这种恐惧被人讲了出来,这个人可能是电车里的一位瘦小的老妇人,可能是一位交通警察,也可能是一个小男孩。
…在这次会议上,一个国家提出了一点建议
一家公司开发出了这样一款产品

像这样满眼都是“一个”的句子,虽然能够理解,但我们仔细想想就知道,“地道”的说法不会有这么多的“一个”;更重要的是,如果总不忘记“一个”,译者很可能自己也被弄糊涂了,我就见过这样的句子:他是一个很有意思、很热心、又很能干的一个人。我猜,原文里估计不会出现两个a,这多办是译者忘不了“一个”的结果。

也有可能是另一种情况,见到a就用“一个”翻译,导致什么都是“一个”:

…他看到一个甜蜜的笑脸
…外面有一个老师
…前头是一个商店
…他买了一个门锁

要想翻译更地道,就必须解决这些问题,下面介绍我的经验,供大家参考:
一、如果a表示的是“一类”(泛指),则不应当翻译,因为纯粹它的出现纯粹是语法需要,没有意义。如果不能判断a是否表示“一类”,可以先用“一个”翻译出来,再尝试去掉“一个”,如果通顺且不影响原意,就直接去掉。这样,前面的三个例子就改为:

…达芬奇是一个画家,也是一个科学家。
…请大家看墙上的这一幅画。请问其中的这个人,他到底是一个男人呢,还是一个女人(其实这里的意思不过是问,这个人是男是女,与“一个”毫无关系)?
…对这个问题,一个热爱自由的人可能会说…,一个趋向保守的人可能会说…
…突然有人开始跑起来。在这一刻,他很可能是想起了与他的妻子有一场约会,而现在去赴约已经太迟了。别管什么理由,他在百老汇大街上向东跑去(或许是本想玛瑞莫参观,一个男人最喜欢与自己的妻子约会的地方)。另外一个人也开始跑起来,可能是一个心情不错的报童。有一个人,一个仪表堂堂的公务人员,也是一路小跑。在10分钟的时间里,从联合仓库到法院大楼,商业街上的每一个人都在跑。一声嘟囔逐渐成了一个可怕的词——“堤坝决口了!”这种恐惧被人讲了出来,这个人可能是电车里的一位瘦小的老妇人,可能是一位交通警察,也可能是一个小男孩。

二、如果a表示的是“某一个”,可以用“一个”翻译,如果嫌弃“一个”出现次数太多,也可以直接说“某”:

…在这次会议上,某一个国提出了一点建议
…某一家公司开发出了这样一款产品

三、如果a表示有确切意义的数字“一”,则不能省略,但要注意量词的搭配:

…他看到一张甜蜜的笑脸
…外面有一位老师
…前头是一家商店
…他买了一把门锁

先来看一个句子:

Busy working makes it impossible for him to go home once every other week.

照当下流行的译法,结果如下:

忙碌的工作让他不可能每两周回一次家。

意思不难理解,但总会觉得不够自然,表达同样的意思,中文句子的结构是截然不同的。
这里我们先不给出中文的地道说法,先考察本句翻译过来为什么会“别扭”?仔细想想,“别扭”来自中英文表述习惯的差异:英文非常喜欢用“无生物主语”来造句(注意,是“无生物主语”,而不是进行修饰的“无生物开头的子句”),而中文极少这样,“地道”中文的主语,一般都是生物。不脱离原文的结构,就难得造出地道的句子,这也是“使”字句大量出现的原因之一。其实,这类句子要想翻译得地道,有个简单的办法:把主语提前,造出“有生物主语”,再理顺结构,选取合适的动词,就可以了。比如上面的这句话,就可以翻译成:

他因为工作繁忙,两周都难得回趟家 每半个月回趟家都很难得。

再看几个例子(原句在上,通行译法在中,“有生物主语”在下):

Hard working brings you high score.
刻苦学习,会给你带来高分。
你刻苦学习,就能拿高分。

A few step forward will show you a wonderful scene.
往前走几步,会展现给你美丽的风景。
你往前走几步,就能看到美丽的风景。

这个道理也可以反过来用,在中译英时,改换结构,造出“无生物主语”的句子,英文也会更“地道”:

他听到了那条好消息,发挥得更好了。
The good news enhanced his performance.

我见到那孤儿,就想起他的父母。
The sight of the orphan reminds me of her parents.

早起三朝当一日
It earns you a new day to get up early three times.

从某种意义上说,人的一生,就是不断突破个体经验的局限,解决未知问题、体验未知生活的过程——否则,我们只需要简单重复劳动,就足以应付了。也正因为如此,要避免在未知局面下的束手无策,借鉴前人/他人的经验,就是非常有效而且高效的做法。今天我要谈的这本书,正与他人的经验有关。

97 Things Every Software Architect Should Know,这是一本很“奇怪”的书,书名很“托大”内容很“平实”的书。我与这本书结缘也很奇特:去年博文视点的编辑徐定翔告诉我,正在翻译一本书,请我帮忙看看译稿,提提建议(后来才知道译者还有阿里B2B的章显洲)。我虽然没做过架构师,但恭敬不如从命,就答应了。

开始,我关注更多的只是文字和专业名词/术语方面,从技术本身的考虑比较少。因为一来自己不是架构师,也没有这方面的经验;二来,这种口气的标题,总觉得有点狂妄。不过,跟着译稿一篇篇看下来,我的看法逐渐改变了:虽然这本书更类似97篇随笔,但到底是经过选择和编辑的,即便“随笔”,也是围绕着“软件架构师”的“随笔”,它们大致勾勒了架构师这个职业的方方面面——职责、权力、问题等等,我之前以为架构师更多地偏向技术方面,也就是负责“规划”整个软件系统的结构,但本书各位作者,都认为架构师应当是甲方和乙方之间的桥梁,一方面,负责准确理解客户的意图,另一方面,拿出规划给技术部门实施。也正因为这种定位,软件架构师虽然大都是从技术人员成长而来,却不能继续埋头在技术(技术架构)的道路上走下去,而需要补充多方面的知识,培养多方面的能力——怎样与客户沟通,怎样选择合适的架构(不能仅仅从技术方面考虑),怎样说服(注意不是命令)技术部门采纳自己的方案。书中不仅点出了这些问题,也给出了一些解决的建议;譬如第85章就告诉读者,说服甲方,仅仅依靠技术的术语是远远不够的,必须把整个技术方案包装成有吸引力的商业模型,这样说服力才会大大增加。如果希望成为称职的软件架构师,此类知识还是尽早了解的好,毕竟,都依靠自己去摸索,在挫折中学习,实在很不划算。
另一方面,架构师也脱离不开技术,所以,技术人员阅读本书,又可以从另一个角度(也可以说是更高的层次)来审视自己的工作及其意义,我的感觉是,一些经验,自己之前只有模糊的认识和体会,但书中的文章它们挑出来,表述得更明确、更到位,于是自己心里也更加有数了。譬如第82章指出“你客户的客户才是真正的客户”,这是非常之对的,而许多技术人员因为自身角色和视角的关系,往往很少意识到这一点:假设你给客户开发了一个电子商务网站,该网站的信誉评价功能不够完善,对此,你的客户可能仅仅认为“这个功能需要改进”,而客户的客户,也就是真正使用这个网站的人,他们的反应很可能是“这个网站买不到真货”,选择离开。有句俗话说:聪明人就是能多为别人着想的那种人。如果能够明确且重视这一条经验,甲乙双方的合作很可能就会融洽得多,技术人员的价值也会随之上升许多。类似这样的经验,书中还有很多,作为技术人员,阅读的时候很可能会感觉“于我心有戚戚焉”,至少,我看到“要经常反思自己做过的项目”时,就是这种感觉。

鱼与熊掌不能兼得,随笔专辑性质的书,照顾了“广”,就难以照顾“深”,因此,在亚马逊网站上,指责的意见都是针对这方面的:lack of detail,random accumulation…。但是我想,书有很多种,定位当然也不一样,应当各司其职——满足了自身定位的书,就是“好书”。这本书也是如此,读者权当这是在旁听架构师的茶话会好了——资历尚浅的听一听,开阔开阔自己的眼界,资历深的听一听,整理整理自己的经验,都能收获愉快的阅读体验;况且,还有平时难得听见的“小道消息”——世界上最先进的F22战斗机,对飞行控制的要求极端严格,应当选择怎样的软件;M1A1艾布拉姆斯主战坦克,开炮的时候会产生极强烈的电磁脉冲干扰计算机工作,这情况下要采用什么数据库……