Year: 2010

事关“工程师思维”

今天金山的刘鑫老师在邮件里谈到了“工程师思维”(工程师的思维能力,就是一种可以把想法实现出来,一步步的变成现实的思维和实践训练),借题发挥一下吧。

我上高中的时候,学校算是本市最好的中学,班主任物理老师也是特级教师,但我一直不是觉得,他讲课说不上多好,无非是循规蹈矩的套路,甚至有点死板——就拿受力分析的题目来说吧,多简单的题目,都要画坐标系,而且就只有那么几个力:重力、摩擦力、牵引力等等,来来去去地分解,真是麻烦,许多题目明明一眼就能看透的嘛。
到我大学快毕业的时候,辅导一个小朋友做高中物理题,忽然就让我改变了之前的看法:那是个很简单的问题,物体在斜面上的受力分析,我问他:这个题目要怎么想呢?出乎我所料的是,他胡乱画出了一堆力:扯力、顶力、拉力…
就在那一瞬间,我明白了,我们的物理老师的做法有多么高明:复杂问题是不能单纯依靠直观思维来解决的,我们往往需要从简单的情况中提炼出章法,再循序渐进,把章法练到纯熟,这样才有能力解决更复杂的问题。物理老师那看似繁琐的重复,其实就是在培养章法,把握问题的核心——做到了这一点,再复杂的问题,都可以一眼看到本质,而不会困扰、迷惑。

可惜的是,这样的思维和习惯,似乎还没有在我们身边扎下根基。我目力所及,看到的很多问题的解决方案,很多教育、探索和反思还只停留在对天赋、才气的吹捧和推崇上,而没有强调练习章法、探究规律、把握本质的工作。可是,才气、天赋等等都是太微妙的因素,难以把握,无法复制,也不易推广,甚至很可能遗失——研究中国古代科技史的李约瑟博士就指出,中国古代的发明有个特点是“重复发明”,前人发明了某件东西,后人不重视,于是失传了,直到许多年后,再由后人发明……
在这方面,西方似乎比我们做的好得多,他们会有人不满足于直观的思维,努力探究日常生活各种现象背后的原理,总结出不依赖“才气”、“天赋”的章法,再经由一代又一代的人传承、积累,结果知识与生产力就像滚雪球一样,越来越多,能量也越来越大。
再举个例子,小时候我做过不少“智力题”:比如几个人各说了一句话,其中几个人说了真话几个人说了假话,让你判断到底谁说了真话谁说了假话;又比如河上有一条船,河边有狼、羊、人、草等等,一次只能渡两样过去,要怎样安排顺序,才能全部安全渡过去。这样的问题,我有一段时间做起来很快,也尝试总结过一些思路,但还是碰运气、凭感觉的成分居多,而且,这样的习题书,也没有告诉我们应该怎么解这类问题,它的本质是什么。直到后来学了离散数学,我才恍然大悟:第一个题目其实就是真值表,第二个题目其实就是图算法。问题提炼到了这个层面,就有现成的章法(或者说“套路”)解决了,再不需要什么才气、天赋:天赋再高、才气再旺盛,也无法大规模推广,也快不过计算机。于是,普通人也可以解决这类问题,其他人(也包括我们)的精力就不用再耗费摸索这类问题的答案上,而可以探索更加深入、更加新鲜、更有价值的问题。

我们还可以再举一个身边的例子:西方的很多书中,一个简单的道理,往往要翻来覆去地讲,非要把各个细节、各种情况都涉及了,才善罢甘休;许多人觉得很罗嗦、很累赘,他们关心的是“正对我胃口的知识”、“核心的结论”。但是,如果有时间认真研究这些细节,了解了各种情况,往往可以站在一个更高的角度来审视这些“核心的结论”,对它的认识更加全面——不但知道价值在哪里,也知道局限在哪里。
其实,这也是我当年阅读《精通正则表达式》之后的体会,在细细阅读了整本书之后,我不但了解了各种功能,用正则表达式解题的一般套路,也知道了在什么情况下要使用什么功能,更知道了什么情况下不应该使用正则表达式——这样的知识,很多就来自书中那些“繁琐”的内容。

正是因为有了这样的体会,我也奢望为大家提供一些这样的便利:《怎样翻译更地道》系列文章尝试总结一些应对翻译难点的通用套路,希望读者遇到这类问题时,查到对应内容就可以解决;《正则表达式傻瓜书》希望重点讲明白的(也是本书的重点),不但有各种功能的应用场景和选择规则,还有正则表达式解题的思维步骤:归纳一个应用场景的文本特征(转化为对正则表达式的需求);照这些特征一一写出子表达式,合理组合起来;最后优化整个表达式。掌握了这三步,并有意训练,就可以熟练准确地运用正则表达式,解决各种问题。

希望我可以努力做到。

感觉之外

小时候,父母给我买了许多书,其中用的最多、印象也最深的一本,就是《少年自然百科词典》(我最早拥有的是动植物那一卷)。当时,无论在外面遇到什么植物、捉到什么昆虫,在电视上见到什么新的动物,都会习惯地查那本词典,从里面,我知道了这些动物/植物的英文名、拉丁名,也知道了它所在的纲目种属,在自然界的分布,生活习性和天敌等等;但回想起来,这本词典给我最重要的收获是:我获得了一种奇妙的体会:在感觉经验之外,存在另一个世界,它更广阔,包含闻所未闻的新鲜事物;也更严格,天地万物,在其中都有各自的地位和归属;有了这种视角,再反过来看自己日常生活的世界,就凭空多出许多感触。

这样的感觉,在许多年后再次得到了印证了,只不过,这次是关于翻译的:常有人问我,翻译到底要怎样学?这样的问题,总是让我苦恼,冥思苦想很久之后,我觉得答案就是一句话:如果你能突破文字形式的限制,真正想明白“原文到底说的什么意思”(这个意思很可能无法用言语表达,很模糊,但你努力揣摩,一定可以捕获到),再用自己的话把它说出来,翻译就完成了——说到底,语言只是表象或工具,真正重要的,乃是语言之外的意象,也是一个更广阔的世界。虽然突破语言限制的过程过程很艰难(时常思考“我说的这句话到底是什么意思”或“这句话,其他人会怎么理解”,很容易把人逼疯,看看维特根斯坦或许会有帮助),但只有突破它,进入到那个更广阔的意象世界,才能最好翻译,也才有标准审视自己的译文。

而且,我逐渐意识到,“把握更广阔世界”的道理,其实适用于许多方面,最重要的就是思维——普通人的思维,大都没有经过严谨的逻辑训练,纵使有天分,多半也是段誉的六脉神剑,无从驾驭,只能期望妙手偶得,而不能经由一条严谨的逻辑链条,得到经得起考验的结论,还是无法突破自身感觉经验世界的局限;或者,用约翰·杜威的话来说就是:

……我们浪费在下面这些事情上的精力,比我们敢于承认的还要多:随意构想的图景、随机闪现的回忆、诱人但毫无理由的期望、无聊的重复、不成形的印象……

六月的第一天,当我收到李笑来老师赠送的Beyond Feelings:A Guild to Critical Thinking时,打开就不忍放下了——标题的Critical Thinking已经很诱人了,目录更是如此:

I. The Context
Introduction
1. Who Are You?
2. What Is Critical Thinking?
3. What Is Truth?
4. What Does It Mean To Know?
5. How Good Are Your Opinions?
6. What Is Evidence?
7. What is Argument?

II. The Pitfalls
Introduction
8. The Basic Problem:  “Mine  Is Better”
9. Errors of Perspective
10. Errors of Procedure
11. Errors of Expression
12. Errors of Reaction
13. The Errors  in Combination

III. A Strategy
Introduction
14. Knowing Yourself
15. Being Observant
16. Selecting an Issue
17. Conducting  Inquiry
18. Forming  aJudgment
19. Persuading Others

参照上面杜威的话,懂得Critical Thinking的人,相比一般人,在希望运用自己的心智解决看待问题、仔细思索并求得结论时,更懂得如何停止即兴的、意识不完全的妄想,也就是说,他们能够对自己的思考负责,他们更懂得如何驾驭自己的心智,而不是任由其发展,被动地对外界做出反应。我想,这样的能力,是我们每个人都希望具备的吧。

当然,学习是艰苦的过程,学习思考更是如此。经常有人说:想那么多、抠那么细,脑子乱不乱,心里累不累?我却觉得不累、不乱,我的经验是:累与不累,更多的是心理的感觉,而不是生理的现象;而且,许多事情,只做到一半和全做完,感觉是截然不同的,甚至完全相反:摸索的过程当然是痛苦的,但不经历这种痛苦,就不能超越自身感觉经验的局限,收获纵览全局的愉悦,而纵览全局之后,自然可以收放自如——能举重,才有自由能够选择举重若轻还是举轻若重。这个道理,也适用于许多正确的事情,如果明知方向是对的,但免不了挫折感,那多半是因为你做得还不够多,不够勤罢。

怎样翻译更地道:否定句的翻译

英文中的否定句,大致可分为两种,一种是对单词的否定,也就是“特殊否定”(Special Negation),比如She is unhappy;另一种是对整句的否定,也就是“句子否定”(Nexal Negation),比如She is not happy。两种类别,在最简单的情况下,意思是没有多少区别的,都是“她不高兴”,但如果加入了其它词语,分别就显现出来了。
比如,我们加入单词very,前者就成了She is very unhappy,意思是“她很不高兴”,后者则是She is not very happy,意思是“她不太高兴”——可以看到,对文句的否定,多少都含有一点肯定的成分。我们不妨再举几个例子:

I don’t think he will come. 我认为他不会来。(本意是“认为”而不是“不认为”)
I don’t complain of your words, but of your tone in which they are uttered. 我抱怨的不是你说的话,而是你说话的口气。(本意还是要“抱怨”的)

如果文句否定中加上because进去,变成not…because…,情况就更复杂些了。最简单的情况,可以把because理解为though/although:

You should not despise a man because he is poor.  不要因为他穷就看不起他(或者“虽然他穷,也不要看不起他”)
Don’t be vain because you are good-looking. 不要因为自己漂亮就虚荣(或者“虽然你很漂亮,也不要虚荣”)

但是,not…because…另有一种更复杂的情况,单从句子上看,完全可能是不同的意思,这时候就需要根据上下文来理解了,举例如下:

I didn’t go because I was afraid.
一种理解是:I didn’t go, because I was afraid. 因为害怕,我没有去。(在这里,否定的是“去”,而“害怕”是原因)
另一种理解是:I went, but the reason is not fear. 我去了,但不是因为害怕才去的(在这里,“去了”是事实,否定的只是“原因”)

所以遇到这种句子,一定不可孤立地猜,而要根据上下文来确认。

最后说说翻译否定句时对语气的把握,比较下面这三种形式的否定:

He isn’t a liar.
He’s not a liar.
He is no liar.

第一种的语气最为平实,意思也最为简单,可以直接翻译为“他不说谎”;第二种把not单独拿出来,语气就更强烈些,不只是说“他不说谎”,而是肯定“他是个诚实的人”;第三句使用no表示“彻底否定”,语气更为强烈,实际上可以理解为“他说的话绝对可信”。类似的例子还有 He is no coward(他非常勇敢)、It is no distance from here(根本没多远)。

怎样翻译更地道:It is…that…句型谚语的翻译

It is…that…的句型,在英文中非常常见,大家都知道,这表示强调,理解的时候,要把that后面的部分放到前面来,比如:

It is no wonder that she is so ill.
她病得这么厉害,并不奇怪。
It is strange that she should have failed to see her own shortcomings.
她竟然看不到自己的缺点,这真奇怪。
It is arranged that the class meeting will be held next week.
据安排,下周召开班会。

但是,语言也是非常微妙的,没有定规可循,例外的情况很多,中文里“中国队大败美国队”与“中国队大胜美国队”是同一个意思,英文也同样如此,“She is too tired to speak”与“She is too ready to speak”,句型一样,表达的却是完全相反的意思(前者是“她累得走不动了”,后者是“她说话太草率”);再比如,莎士比亚的《威尼斯商人》第2幕第2景第81行有这么一句:

……It is a wise father that knows his own child. ……

老高波:唉,少爷,我是个瞎子;我不认识您。
朗斯洛特:哦,真的,您就是眼睛明亮,也许会不认识我,只有聪明的父亲才会知道自己的儿子。好,老人家,让我告诉您关于您儿子的消息吧。请您给我祝福;真理总会显露出来,杀人的凶手总会给人捉住;儿子虽然会暂时躲过去,事实到最后总是瞒不过的。

以上是朱生豪先生的翻译,而梁实秋先生翻译的是:……聪明的父亲才能认识自己的儿子呢……

初看起来并没有错,都还通顺,但较真起来是,两位大翻译家不幸翻译错了。中国古话虽然有“知子莫若父”,但莎士比亚的意思却是相反的:无论怎样聪明的父亲,也不见得认得出自己的儿子。把这句话放回原文,才真正通顺:

老高波:唉,少爷,我是个瞎子;我不认识您。
朗斯洛特:哦,真的,您就是眼睛明亮,也许会不认识我,再聪明的父亲,也有认不出自己儿子的时候。好,老人家,让我告诉您关于您儿子的消息吧。请您给我祝福;真理总会显露出来,杀人的凶手总会给人捉住;儿子虽然会暂时躲过去,事实到最后总是瞒不过的。

那么,It is…that…,究竟在什么情况下表达这种“否定”的意思呢?据我的经验,如果它作为格言、谚语(Update:网上查到已经有人写过这个问题,总结有三个特征:1.被强调部分是一般的泛指;2.被强调中心词至少有一个形容词作为修饰;3.时态为一般现在时),就要尤其小心,仔细掂量原意,以下再举三个例子:

It is a good workman that never blunders.
再好的工人,也会犯错(智者千虑,必有一失)。
It is a long lane that has no turning.
再长的路,也会遇到转折(世事难料)。
It is a good horse that never stumbles.
再好的马,也有失蹄的时候(凡人总有缺点)。

正则表达式解题经验谈

这两天,我的同事丁宇@felixding,极具艺术气质的设计师,推荐)遇到了一个正则表达式的问题,我琢磨了半天写了个表达式,暂时能用;今天庄表伟@zhuangbiaowei)跟我说,遇到正则表达式的问题,大家一般只能查手册,但具体的问题要怎么思考和解决问题,往往束手无策;恰好我在写作《正则表达式傻瓜书》,也希望多讲讲这方面的内容。尽管目前的写作还没有进展到介绍解题经验的阶段,但可以先在blog上写这方面的内容,希望对大家有所帮助,也希望大家多提意见;如果大家愿意,我可以继续写这类文章。
另:本例解决过程中王晖同学(@cnhacktnt)提供了大量的帮助,他使用正则表达式的熟练程度远在我之上,在此深表感谢。

要想写好、写对正则表达式,第一步就是分析需求,把模糊的应用要求清楚归纳为几条程序性特征;本例中的正则表达式用于验证“密码字符串”,仔细分解应用场景,可以得到四条明确的要求(一般来说,密码字符串对长度都有要求,但本例中,需要验证的密码字符串已经由其它语句保证了是6-12位长的字符串,所以这里不考虑长度):

1.只能由小写字母、数字和横线(-)组成;
2.开头和结尾不允许是横线;
3.不允许全部是数字;
4.不允许有连续(超过一个)的横线。

下面我们一一解析:

1.只能由小写字母、数字和横线(-)组成
这一条很好办,用字符组『[-a-z0-9]』即可解决,注意我们没有用字符组『\w』,因为一般来说『\w』等价于『[a-z0-9_]』,下划线_也可以匹配;在使用正则表达式时准确限定范围、避免错误匹配,是需要谨记的规矩;

2.开头和结尾不容许是横线
这也很好办,我们知道,在正则表达式中,字符串的开头位置用『^』表示,结束位置用『$』表示(关于『\A』和『\Z』的情况暂不讨论,因为密码字符串中不可能出现换行符),这两个锚点(anchor)只匹配位置,不匹配任何字符;开头不容许出现横线,也就是说,从开头位置向后,不容许出现横线字符,我们可以用否定顺序环视(negative lookahead)功能解决。在本例中,它写作『(?!-)』,其中的『(?!…)』是否定顺序环视的标志符,其中的横线,整个结构表示,在当前位置之后(也就是右边一位),不容许出现横线字符,把它和表示字符串开头的『^』连在一起,得到『^(?!-)』,就表示“从字符串的开始位置,向右边看,不容许马上出现横线”;类似的,我们在表达式的末尾使用否定逆序环视,正则表达式『(?<!-)$』就表示“从字符串的末尾位置,向左边看,不容许马上出现横线”;

3.不容许全部是数字
这个要求得动点脑筋,有人一看到“不容许全部是数字”,就想到否定型字符组『[^0-9]*』,这其实是不对的。我们仔细想想,“不容许全部是数字”就是“必须出现至少一个非数字字符”,而第一条要求字符只能是小写字母、数字和横线,那么这个“非数字字符”只能是小写字母,或者横线。这样一来我们就知道了,在这个正则表达式中,必须出现一个『[-a-z]』匹配的字符;

4.不容许有连续(超过一个)的横线
这种“不容许出现某种连续字符”的情况,是正则表达式中最难处理的地方,因为常见的表示“不容许”的功能,就是排除型字符组『[^…]』,于是,遇到“不容许出现两个连续横线”的情况,许多人就想当然地写下『[^–]』,但这其实大错特错——我们需要谨记,字符组的作用只限于单个字符,所以『[^–]』的意思是“在这个位置,不能匹配横线”。那么要怎么办呢?
一般来说有两个办法,我们可以规定,在一个横线字符匹配之后,不容许继续出现横线,还是应用上面说过的否定顺序环视,『-(?!-)』,就保证了匹配了一个横线之后,不容许继续出现横线,如果在每一个可能匹配横线的地方都加上这个限定,“不容许有连续(超过一个)横线”的要求也就满足了;或者我们也可以在整个正则表达式的最开头,使用否定顺序环视『^(?![-a-z0-9]*–)』,因为表达式『[-a-z0-9]*–』会“尽力寻找可能的匹配”,对它加以否定,就保证了整个字符串中绝对不容许出现两个连续的横线。
在这个例子中,我们观察第一条要求对应的表达式,发现横线一般是与小写字母和数字同时出现在一个字符组『[-a-z0-9]』中,如果采取上述第一种办法,因为字符组中只能出现对单个字符的规定(而无法使用类似环视之类的结构),『[-(?!-)a-z0-9]』的意思完全不对,所以整个字符组就要改成括号,以多选结构表示为『(-(?!-)|[a-z0-9])』,显得很累赘,所以优选第二种方法。

好了,四条要求已经分别解决完毕,现在我们把它们组合起来。

首先,是开头的『^(?!-)』,这就表示“开头不容许出现横线”,在结尾用『(?<!-)$』,表示“结尾不容许出现横线”;
其次,之中的内容都只可能是小写字母、数字和横线,所以用字符组『[-a-z0-9]』,因为长度不确定,所以使用量词『*』,变成『[-a-z0-9]*』;
再次,整个正则表达式中必须出现一个非数字字符,也就是必须让『[-a-z]』匹配一个字符,因为这个非数字字符出现的位置不确定,我们不妨把上面的表达式『[-a-z0-9]*』“切开”,把『[-a-z]』塞进去,得到『[-a-z0-9]*[-a-z][-a-z0-9]*』,这样就保证了“在所有由小写字母、数字和横线构成的字符串中,至少出现了一个非数字字符”;
最后,不容许出现两个连续的横线,我们的解决办法是在字符组的最开始位置,添加一个否定顺序环视,也就是『(?![-a-z0-9]*–)』,我们把它与之前的『^(?!-)』合并起来,得到『^(?!(-|[-a-z0-9]*–))』。

所以,整个正则表达式就是这样:

^(?!(-|[-a-z0-9]*--))[-a-z0-9]*[-a-z][-a-z0-9]*(?<!-)$

看起来完全没有问题,但放到Ruby on Rails框架里运行,却报正则表达式错误——原来是Ruby不支持逆序环视,所以最后的『(?<!-)』无法使用;那么要如何解决呢?
这时候又有两个办法,第一是用字符串函数判断最后一个字符是否横线,来“辅助”正则表达式,许多新手往往会陷入思维的误区,或者追求“漂亮”,非要用一个正则表达式解决所有问题,这其实是不必要的;如果非要用正则表达式,可能要动用一些复杂的结构——不过还好,在本例中,我们可以“取巧”,再添加一个否定顺序环视,『(?![-a-z0-9]*-$)』,表示“不容许出现 横线+字符串结尾 的情况”,也就等于“在字符串结尾之前,不能出现横线”。

我们把这个字符组与之前的『^(?!(-|[-a-z0-9]*–))』合并,就得到『^(?!(-|[-a-z0-9]*–| [-a-z0-9]*-$))』;于是,整个正则表达式就成了:

^(?!(-|[-a-z0-9]*--|[-a-z0-9]*-$))[-a-z0-9]*[-a-z][-a-z0-9]*$

输入这个正则表达式,编译不再报错,运行测试,发现完全符合要求。

怎样翻译更地道:译者一定要多走一步

很多人都对外国的教材颇有微词:一个简单的东西,翻来覆去地讲,生怕不明白,很麻烦。没错,这样确实很罗嗦,但罗嗦并非没有意义,这是因为作者为广大读者(而不是某一个读者)考虑,多走了好几步,这样才能照顾到大部分读者,真正传授知识。

同样的道理也适用于翻译,译者相比读者,也一定要多走一步,这个道理最明显的体现就是典故的翻译。

所谓典故,就是文章中引用的古代故事或者有来历的词语。译者对典故的处理,需要照顾两方面:一方面要能够识别、准确理解原文中的典故,这需要语感、知识积累和运用搜索引擎的能力;另一方面,也要能把典故的意蕴传递给读者,毕竟,原文与译文是不同的语言,存在于不同的文化之中,不能奢求读者理解原作文化中的典故。

Continue reading 怎样翻译更地道:译者一定要多走一步

我个人比较受用的一些习惯

1.长期的任务,要尽早开始

一般来说,长期任务总是比较烦人,也有难度,而人心里总有逃避困难的趋势,最后的结果或者是最后干脆放弃,或者是剩下一点点时间手忙脚乱地赶工;我自己之前也有这样的教训,自欺欺人地说“要轻松生活,抛开烦扰”,到最后几天才着急办理,搞得狼狈不堪。

后来,我发现这做法其实是事与愿违的,如果调整好心理状态,尽早了解情况并不必然带来的心理压力,反而因为时间充裕,有信心把握进度,即便中间遇到突发的问题,也留有时间解决;更重要的是,尽早着手,可以充分利用边角余料的时间:比如说,接到一份文档,需要在三天后给出意见,我一定会在当天大致浏览一遍,下面的三天里,就能在坐车、走路等等零碎的时间来思考,而且效果不错,如果没有尽早了解,这些时间就浪费了,什么有意义的事情也没干(阿基米德若不是之前遇到了问题,在澡盆里泡一万年也想不出办法检测皇冠的真伪)。

电子邮件的情况也是如此,我常看到有人讨论电子邮件是马上回好还是过一段再回好,我的经验是,收了电子邮件要尽快看,至少了解邮件里说了什么,如果不是着急的,等想清楚了再回。

2.时常想清楚自己正在做的事情

一般来说,我们做的工作总是有一个目的和意义的,但工作的形式又是非常具体的,忙起来往往就钻到死胡同里,忘记了真正的目的和意义,“想不清楚”自己真正要做什么了。前几天,我需要搭建一个演示环境,手上有两套方案A和B,方案A估计要半小时,方案B估计要一小时,于是我选择了方案A,可是动手之后才发现服务器缺乏一个必要的组件,于是先费劲添加好这个组件,再编译自己需要用到的软件,又发现在64位环境下会编译出错(以前我只在32位机器上编译过),上网查发现需要打一个补丁,于是又四处去寻找这个补丁……此时已经用掉一个多小时了,下面还不知道会有多少问题;我忽然想到,自己真正要做的无非是演示程序,解决打补丁、找软件之类的问题虽然很有意思,但其实从任务的角度考虑,是浪费时间,于是果断选择方案B,一小时后就顺利解决了。

据我观察,很多技术人员都热衷解决纯技术问题,温伯格称之为“hacking (神游)”;神游很好玩,容易上瘾,但我们都不是不食人间烟火的神人,要想真正做点事情,就不能放任神游。

关于这一条,还要补充一点:哪怕忙得昏天黑地,也不能没有头绪。工作的压力很大,忙得焦头烂额是常有的事情,许多人就在这种忙碌中失去了方向,往往忙了整天,下班了都不知道自己今天到底干了什么,有什么意义。我的经验是,越是这种时候,越要打起精神想想(虽然这样很难):自己究竟要干什么,目前的安排是不是可以做些调整……持续的思考,才会产生感悟,才能有改观,否则,有可能一直陷入“瞎忙”的境地而不能自拔。

Continue reading 我个人比较受用的一些习惯

怎样翻译更地道:and不是“和”

生硬地“对接”两种语言,尤其是“条件反射”式地对照,是翻译中的大忌——一方面,译文因此变得僵硬难读;另一方面,在不同场合,词语的意义也有不同,自然也不能用同样的办法来翻译。今天讲的就是常见单词and的翻译。

英文单词and,一般译者都翻译为“和”:

you and me 你和我
China and America 中国和美国
peace and development 和平与发展

(Update:图灵的刘江老师指出,地道中文许多场合不用“和”,确实如此,上述例句的“和”也可去掉,类似的还有“油盐酱醋”、“东南西北”、“男女老幼”等;就我个人的经验,不用“和”时一般使用单字名词,结合多字名词用“和”则显得比较洋气)

在这些场合,如此翻译并没有错:连接两个对等主体的连词,正是中文所说的“和”。

Continue reading 怎样翻译更地道:and不是“和”

怎样翻译更地道:最高级的翻译

英文中形容词有比较级、最高级两种形式,遇到最高级,条件反射式的做法就是以“最”来翻译: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号上戏剧院,我目睹了一场老男人的聚会,举目看去,大家的年龄都差不多。星际争霸,是专属于那个年龄段的记忆。

Continue reading 星际,老男人的聚会