众成翻译 上线一个多月以来,我已经翻译了 17 篇英文文章,这几乎超过了我之前翻译的所有英文文字的总和(我之前参与翻译了《Pro HTML5 Performance》一书的部分章节翻译)。
对待每篇文章,我所能做的是尽自己最大的可能保证翻译质量。但我毕竟不是英语专业,而且,就和许多理科生一样,我的英文水平本身并不好(大学里面英语 6 级考了 3 次才通过 ︶︿︶)。因此,我不能保证每段翻译都完美符合原文,但我对自身的要求就是努力达到还原原作的“原汁原味”,就像身为前端工程师追求对设计稿的像素级还原一样,身为译者的我,追求翻译的三个准则:
在翻译文章的过程中,也遇到了许多难点,在这个过程中得到一些同事以及朋友的帮助和指点,自己也慢慢总结出一些东西来,因此我将这一个月翻译的过程中我得到的一些东西整理在这里给大家分享。
对于身为工程师的我们,我想大家一定也知道软件开发的一个准则——先思考和理解需求,做好设计,然后再动手写码。不真正理解需求,贸然动手写码,不但很难控制代码质量,随时因为需求考虑不周而返工,同时也会给后续产品的维护埋下许多坑。
对于翻译也是一样的,你需要理解一些东西,才可以动手翻译:
大部分技术文章是有目的性和针对性的,作者写一篇文章,除了讲解技术之外,带有总结经验、指导团队开发,介绍和推广工具、开源项目,介绍好的平台、吸引人才,等等目的,了解作者的目的,才可以明白作者写这篇文章的 立场 ,知道什么是作者文章中着重表达并希望读者理解的,才可以站在作者的立场上,把这些重点在译文中同样体现出来。
尤其是一些技术难度很大的文章,比如 “What’s in a Continuation” 、 Implementing a Stepping Debugger in JavaScript 这两篇系列文章,它们本身的专业性很高,作者推荐他的项目 unwinder 的同时普及延续性的概念和 JS 状态机与通过状态机实现单步调试的思想。如果不去了解作者的目的和文章的核心思想,一开始就陷入到技术细节中间去,必然不知道作者究竟想表达什么,这样的话,翻译出来的文章就丢失了最核心的“灵魂”,也就很难完全表达出作者想表达的意思,偏离了原汁原味,这样的技术文章读起来也会索然无味的。
原文作者都是外国人,我们并不了解他们的性格、生活习惯、文化、理想以及社会背景,因此说实话我们很难完全代替作者的思想,像作者一样去思考。然而, 文字是奇妙的东西 ,不论是中文还是英文,文字确实反映出一些 理性之外的东西 ,即使是技术文章也是一样的。
就像翻译了几篇 Eric Elliott 的文章之后,你就能够感受到这位作者的张扬和自信,这样你就能理解和欣赏他这个人,包容他稍稍有些“极端”的观点(ES6 classes 什么的最讨厌了 ︵ヽ(`Д´)ノ︵),也会喜欢他最后一段的自我介绍:
He spends most of his time in the San Francisco Bay Area with the most beautiful woman in the world.
翻译非技术类的文章更有趣,你可以从中获得作者个人更多的信息(因为写技术文章时,一些个人化的信息,作者又不能将它们写在代码注释里 ╮( ̄▽  ̄)╭ )。
“My positive experience as a woman in tech” 是我翻译的第一篇非技术文章,在这篇文章里,除了感受到 CSS 一姐 Lea Verou 的积极阳光的一面外,你也可以深深感受到她作为资深技术女神的那种完美的自信和霸气。
My gender only affected my internal motivation: I often felt I had to be good, otherwise I would be painting all female tech speakers in a negative light. But other people are not at fault for my own stereotype threat.
我从心里认为,作为女性演讲者的我必须要优秀,因为我不想让听众觉得女性讲师的能力不如男性讲师,但这并不是由于其他人观点影响而是我自己内心的选择。
Lastly, In all my years as a working professional, I’ve always negotiated any kind of remuneration, often hard. I’ve never lost an opportunity because of it, or been treated with negativity afterwards。
最后,以我在职业生涯中的多年经验,我总是可以谈妥任何我期望的报酬,尽管有时候有点难,但我从来没有因为女性身份带来负面影响而错失过任何一次机会。
上面这些文字,在翻译的时候,真的会打动我的内心。我会尝试站在她的立场上思考,如果我是她,我能不能做到这些,我能不能做得像她一样好?
要想翻译好原文的精髓,有些东西你必须得 “感同身受” ,就如同另一篇文章 “当悲剧或失望来袭,要知道你们能扛过任何事” 。你必须要深刻了解桑德伯格的哀伤,你要想像你就是这一位伟大的女性,一年前失去了自己的挚爱,如今站在伯克利大学的讲台上,面对着即将毕业,信心满满走向人生下一阶段的学生,你会说些什么,你会把你生命中的什么与他们分享?
Today will be a bit different. We will still do the caps and you still have to do the photos. But I am not here to tell you all the things I’ve learned in life. Today I will try to tell you what I learned in death.
今天会有一点不同。当然,我们还是会扔帽子拍照。但是我不是来告诉你们我从生活中学到的东西。今天我是来告诉你们我从死亡中学到的东西。
Dave’s death changed me in very profound ways. I learned about the depths of sadness and the brutality of loss. But I also learned that when life sucks you under, you can kick against the bottom, break the surface, and breathe again. I learned that in the face of the void—or in the face of any challenge—you can choose joy and meaning.
戴夫的死彻底改变了我,让我理解了一个人的悲伤能有多深,一个人失去至爱是多残酷的事。但是,我也学到了 当生活的漩涡把我们吸进深潭时,我们依然可以从潭底跃起,钻出水面,重见光明 。我还学到了在面对空虚和面对任何挑战时,我们可以选择找到快乐和意义。
文字是文字,文字是客观的,但作者是有感情的,技术类文章和非技术类文章都有,优秀的译者要读懂文字背后的东西,你才能找到作者真正想表达的内涵,只有这么做你的翻译才能真正做到“信、达、雅”。
“Facebook 第六感 · Alexandre Kirszenberg” ,当作者写道:
Look at that smug face. It’s taunting me, I know it!
以及:
Wow, this Facebook guy sure sounds like a serious fella. Better not mess with him.
Who am I kidding, let’s tinker!
你能感受到作者的那种俏皮劲对吗?将这种感情翻译出来。
技术文章通常都配有许多例子代码,翻译的时候最好将代码详细过一遍,至少需要了解通过代码作者想要表达什么。
例如 “What’s in a Continuation” 这篇文章,如果翻译的时候都不弄清例子的作用和意义,不把这些细节表达给读者,那么读者会觉得这篇文章的例子甚至整篇文章都很无聊,这样是抓不到这篇文章的精髓的。
翻译文字不难,就算你的英文不好,单词不知道意思,我们还是可以查字典呀。但是,有一点很重要,翻译出来的文字,是要给人阅读的,而不是给机器阅读的。尤其是我们是写程序的,应该明白这个道理吧。
代码主要是给人阅读的,只是偶尔让机器执行一下。
文字更是给人阅读的……
我手里有中文版的《JavaScript 函数式编程》一书,以及它的原版 《Functional JavaScript》。由于对函数式编程较感兴趣,因此我空闲时就会翻翻那本书。然而,我发现阅读中文版远不如阅读英文原版轻松(在这里我无意吐槽作者和出版社,只希望看到它的下一版能够更好一些)。我们来看第三章第一段中的一部分——
英文原版:
The term "binding" refers to the act of assigning a value to a name in JavaScript via var assignment, functions arguments, this passing, and property assignment.
中文版:
“绑定(binding)” 一词指的是通过 var 关键字、函数参数、this 传递,或属性分配给 JavaScript 中的值分配名字的行为。
我确定这不是这本书里最难懂的一段翻译,但是它的确已经让读者有些晕了,断句该怎么断?修饰和主谓宾究竟在哪里?我想语文老师不会认为上面这段中文是一段 符合中文语法习惯的通顺的汉语句子 吧。我们来把这段文字重新整理一下:
术语“绑定(binding)”,指的是 JavaScript 通过 var 指令赋值、函数传参、this 上下文传递以及属性赋值,将一个值分配给一个名字的行为。
这样是不是通顺多了?
有时候,英文的修饰语比较长,我们需要将从句进行拆分,以免定语太长。比如:
In a recent project of mine, we let a gigantic swath of unit tests enter the test suite with absolutely no description whatsoever of the test’s purpose.
对应中文翻译:
在我最近的一个项目中,我们在测试集(test suite)中写了大量的单元测试,却完全没有描述它们是干什么的。
英文的修饰语可以放在后面,而且很长,所以中文翻译的时候我们得注意。记得以前在学校阅读论文的时候,一篇论文的作者有一段很长的证明推论,我在翻译的时候越来越觉得作者的结论有错误,结果,在最后作者来了一个“...which is impossible” ╮(╯▽╰)╭。
一些技术文章前面出现这个,这是什么意思呢?实际上,它的意思是: too long, don't read 。一些作者会将它放在长文的前面,但肯定不是希望读者真的“不要读“,只是预先提醒读者以下内容很长的意思。因此要翻译过来的话,大概可以翻译成 “长文预警” 。
一般是指 《Design Patterns: Elements of Reusable Object-Oriented Software》 的四位作者 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides。
这是在翻译 “My positive experience as a woman in tech” 时遇到的,这是西方刑法学中的经典格言,指的是:
It is better that ten guilty persons escape than that one innocent suffer。
宁可让十个有罪的人逃脱,不可让一个无辜者受苦。
一个好消息是,技术文章一般很少有非常难翻译的比喻。不过在非技术类文章里面,这类句子会比较常见一些,它们较难翻译,但是翻译它们也会得到更多趣味和成就感,更重要的是,你会了解到英文世界的一些修辞手法。
回到桑德伯格演讲的这个例子:
But I also learned that when life sucks you under, you can kick against the bottom, break the surface, and breathe again .
加黑的部分直译过来是:当生活将你吸入下去,你可以对着底部踢,破坏表面,然后重新开始呼吸。
而我的翻译是:
但是,我也学到了 当生活的漩涡把我们吸进深潭时,我们依然可以从潭底跃起,钻出水面,重见光明 。
有一些比喻真心很难翻译,同样在桑德伯格的演讲里:
We often project our current feelings out indefinitely—and experience what I think of as the second derivative of those feelings.
the second derivative 指的是数学上的二阶导数。这种“学霸式”的比喻真心难以翻译。不过通过后文她的解释,我们基本上可以理解这个比喻的意思:
We feel anxious—and then we feel anxious that we’re anxious. We feel sad—and then we feel sad that we’re sad.
意思就是我们感到焦虑,同时我们又焦虑“我们感到焦虑”这件事本身,我们感到悲伤,同时我们也为“我们悲伤”而愈加悲伤——这可不就是二阶导数嘛 ⊙﹏⊙。
如果能够做到的话,我们可以用比喻来还原比喻,如果真心做不到,我们也能够将作者的意思尽可能表达出来,然后用译注来补充说明。
比如桑德伯格演讲中的这一句:
“Option A is not available. So let’s just kick the shit out of option B.”
我们如果直译过来应该是:“选项 A 不可用,我们只能把“屎”从选项 B 中踢出。”
这么译不优雅,近乎于粗口,可想而知如果这样翻译必将破坏掉这篇文章美好的文字,所以,我们必须了解英语的口语习惯,我将它翻译成:
“我们已经无法选择方案A了,所以我们只能把该死的问题从方案B中剔除。”
以上是我最近翻译中遇到的问题和收获,我从这些翻译中学习到了以下几条:
今后,我还会继续在众成翻译上翻译好的文章给大家,有任何问题,欢迎讨论。
也希望有兴趣做技术文章翻译的同学,一起加入 众成翻译 ,翻译真的是一件非常有趣,也非常有收获的事情。