Gmail的故事:Founders at Work节译【续三】

欢迎转载,转载请注明出处。

Founders at Work, Chapter 12

Yurii 翻译

Livingston: 那时候Google一门心思关注搜索,你有没有担心过自己的项目被抛弃?

Buchheit:一直都是。我还得说,现在看来Gmail很不错,但我们开发是很早时候的事了。Gmail是第一个真正偏离单纯“web搜索”的产品。Groups其实也依赖搜索——只不过它搜索新闻组里公开的帖子。

Livingston:Gmail还必须要邀请才能加入吗?

Buchheit:不用,你可以用手机申请。

Livingston:也可以通过Blogger,对吗?

Buchheit:我们已经向许多不同的方面开放了。大学生可以申请,我们希望开放给学生。

Livingston:为什么要邀请加入,这背后是怎么想的?

Buchheit:理由有好几个。我又得说一遍,邮件的问题很麻烦,不只是在数据规模那些方面。有个问题很重要,那就是,我不希望数据有任何损失,因为没人愿意弄丢邮件。如果web搜索出了问题,你可以退回去,重抓一遍网页,但是邮件不同,一旦丢了就不可挽回。
我非常关心系统的稳定性。策略之一就是控制用户的规模,这样就不会超出限制。你必须时刻确保当前用户享受到优质的服务。同样,这做法也约束了某些滥用email的行为,举例来说,这样发垃圾邮件的人就很难获得1000万个帐户——那样的后果很糟糕。

Continue reading Gmail的故事:Founders at Work节译【续三】

Gmail的故事:Founders at Work节译【续二】

欢迎转载,转载请注明出处。

Founders at Work, Chapter 12

Yurii 翻译

Livingston:还有哪些新特性是独创的?

Buchheit:对话视图——你打开某个对话,其中的所有邮件会像卡片一样列出来,而不是单独出现。

Livingston:这是你想出来的?

Buchheit:其实有好几个原因。其中之一是,我曾做过Groups,那里同样有归类(threading)。另一个是,我们内部有太多的邮件。
如果没有会话,就会出现这种情况:有人发出了一封邮件,有四个人回复了,五个小时之后还有人在回复,其他人会觉得,“这已经重复谈论过五次了,你还要回复。”
据我们观察,人们费那么大力气管理邮件的原因之一在于,他们尝试把对话归拢到一起。他们把邮件放到同一个文件夹——否则就会忘记,或是放错文件夹,对话就完蛋了,再也没法回复。
大家用各种工具和诀窍来管理会话。为什么不把它们直接归拢到一起呢?后来我们又想到,“我们来把引用他人的邮件内容隐藏起来吧”。因为这样阅读速度更快,而不需要浪费精力。我们同样希望集成IM聊天。做第一版的时候,我们没时间集成那个功能,但是很早的原型中就有聊天功能的,因为我们希望把聊天和email做到一起,这两者是一体的。所以,我们会从聊天的角度来看待email,所以我们给聊天加入email功能,而不是走其他的路。显然,聊天是为谈话服务的——没有人受得了分割成一条条的聊天纪录。所以,谈话视图也是从此而来——有段时间我们甚至把email的格式设定得更像聊天。

Continue reading Gmail的故事:Founders at Work节译【续二】

Gmail的故事:Founders at Work节译【续一】

欢迎转载,转载请注明出处。

Founders at Work, Chapter 12

Yurii 翻译

Livingston:这么说,你花了一天来做Gmail,而你不知道自己在做的事情的意义——之后呢?

Buchheit:很长时间里就只有我一个人,然后Sanjeef Singh加入进来。但是,在Google更换项目,尤其是那时候的Google更换项目,并不容易。不是说,某一天你就忽然去做一个新的项目了。那时候他正在做企业搜索,所以他还得花很多时间在企业搜索上。过了很久,Sanjeef才把大部分时间用在Gmail上。所以有很长的时间,Gmail的进展非常慢。
开始主要是我,然后是我和Sanjeev,之后另一个家伙Jing Lim也来了。团队的增长非常缓慢。做一个email那样迥然不同于Google传统的东西,这想法人们还是不太确定。

Livingston:你宣布:“这是了不起的东西,我们要发布了”。这是什么时候?

Buchheit:是发布几天以后。这项目很大。有些时候,我们似乎根本不可能完成它。

Continue reading Gmail的故事:Founders at Work节译【续一】

Gmail的故事:Founders at Work节译【待续】

Founders at Work是一本有意思的书,讲述了若干有意思的创业故事,我看得兴起,顺手把访谈Gmail创始人Paul Buchheit的一章翻译出来,给有兴趣的朋友看看。

欢迎转载,转载请注明出处。

Founders at Work, Chapter 12

Yurii 翻译

Paul Buchheit是Google第23名员工。他创造并领导开发了Google的Web邮件系统,Gmail,该产品引领了当今所谓“Web2.0”的众多特性。除此之外,Buchheit开发了Adsense的第一版原型,Google依靠这个程序在其它网站显示广告。在2000年一次关于公司价值的一次会议上,他提出了现在众所周知的公司信条:不做恶(Don’t be evil)。

尽管Buchheit算不上创始人,但他对Google的贡献,可能比其他许多创始人在创业时的贡献更大。Gmail其实是在Google内部诞生的——这是一个传奇般的项目,起初,它并不是公司的主要业务,只是由一小群人发起,而且,许多人开始并不看好它。

Livingston:讲讲事情的开头吧。Gmail是非正式项目(side project)还是公司指派的任务?

Buchheit:实际上两种因素都有。我很早就在做Email软件,当时大概是1996年,但只是个小项目。但Gmail的想法从来没有实现过。奇怪的是,大概因为一些别的理由,那时候我似乎就想叫它Gmail。这只是凑巧——它并不必然是Gmail的前身,却是我一直在思考的,因为我长久以来就对email不满意。
那时候我在学校念书,还没有hotmail。要看邮件,你得回宿舍。我想,这可真够傻的,我应该能在任何地方检查邮件。所以就想做基于web的邮件。我真的不知道那时候自己在干嘛,因此也没什么结果。我写了点程序,但一直没什么用处,也从来没投入实用。
中间内容就不提了,直接说最后:我到了Google,为Google Groups工作,groups和email不完全一样,但是有关系。等Google Groups的第一代产品差不多完善之后,他们问我,是否愿意开发某种email或是针对个人的产品。这只是一个粗略的意向。他们只是说:“我们觉得这类东西有点意思”。当然,我很高兴干这个。

Continue reading Gmail的故事:Founders at Work节译【待续】

技术的力量

现实的世界这么复杂,上帝到底起了什么作用?
有人说,上帝就是创生世界的第一因,他是这个因果链条的第一环,然后世界就“自顾自”地出现了;
也有人说,其实因果链条上的每一环,表面看来是逻辑联系,其实都是上帝的意志;

这个问题我们不回答,我们能确定的是,在这个高科技的社会,生活中的各种事务,背后都是技术的“意志”;正因为如此,温伯格在《技术领导之路》中说,在这个时代,技术人员拥有强大的力量,只是需要发掘自己技术(技术知识)的价值,所以他还会花专门篇幅讲到力量转换。

今天写上面的话,是因为今天又看到有朋友在不厌其烦地详细介绍wordpress的维护。我想说的是,作为技术人员,不妨多动些脑筋,想想如何依靠技术解决更广泛的问题。譬如Wordpress的维护,我之前也饱受折磨,某天终于发现,PHP可以直接调shell,shell里面又可以直接调mysqldump——这样,只要简单几个Web页面,就可以完成wordpress的升级、文件备份、数据库备份和恢复,再通过Cron,就实现了blog的定期备份和日常维护,从此高枕无忧。

技术的力量,其实无所不在。

Beta技术沙龙记

俗话说“无巧不成书”,还真是这样。上周末的“巧”,就是RSS:周六跟抓虾的朋友们聚餐,周日下午Beta技术沙龙的主题就是“网易有道RSS阅读器”。

Beta技术沙龙在詹膑老师的“奇遇花园咖啡馆”举行。在车水马龙的西直门,能找到这样一个安静的地方,实属不易(当然也很难找,我们开玩笑说还应该开一家“齐秦菜园餐馆”)。装修也别有味道:明亮的落地窗,颀长的红色窗帘,极高的天花板……第一次去的时候,我瞥见高架上堆放着一排白色的书:“看那样子,应该是川端康成的《雪国》和《伊豆的舞女》吧?”,詹老师微笑颔首。

“有道”这个品牌,最早应该是作为博客搜索引擎出现的,07年末又诞生了有道阅读器。如今RSS在线阅读器日趋流行,有道赶上了好时候,又可借助网易的资源,相对其它一些阅读器,条件好得有点让人嫉妒,但是能在一年多的时间里做到今天这样的程度,也确实下了不少工夫。此次来的三位嘉宾,胡琛、王焱和刘懿,分别从运营、技术和产品三方面介绍了有道阅读器,包括遇到的问题,解决的办法,对未来的思考……看得出来,他们的准备非常认真仔细。
当然,既然名为“技术沙龙”,参与者最关心的,还是技术的方面:系统的架构是怎样的、采取了怎样的策略、出现问题如何解决……看他们的PPT,我最深刻的感觉是“天下大同”:各家的技术,或许细节上有所差异,但总的思路和方向,大抵不会相差太远。当然,最让我羡慕的还是他们可以使用网易的存储系统,轻松备份超过20T的数据,高枕无忧,这太让人嫉妒了(曾经有天晚上,我因为太困误删了极为重要的用户数据。当时已经十一点半,就准备休息了,结果惊出一身冷汗。而且之前没有及时备份,所以只能想法从四处导出数据“拼”回来,折腾到四点才算写完恢复程序,让它正常运行,第二天总算没让用户发现,那次事故印象太深刻了)。

整个沙龙的气氛轻松而随意。主题演讲结束之后,主持人说:“下面大家自由开小会吧”,于是会场瞬间热闹起来。坊间传言:“沙龙的成功程度,取决于小会的热闹程度”,这样看来,沙龙是很成功了。

这次活动还有点小意外——有位素不相识的朋友(原来是Robin)很意外“没想到《精通正则表达式》的译者也在场”。是的,我们都没想到,这倒正合咖啡馆的名字:奇遇花园。

现场图片(如果这是一张世界地图,我就在新西兰的位置:))

北京,我喜欢的三家湘菜馆

某次跟一位北京土著“湖南女婿”聊天,他提到“以前在北京吃湘菜,只觉得湖南菜就是辣,这次来了湖南,才觉得湖南菜不是那样的,有种特别的香味在里面。”
我说,你触到了湘菜的真谛。

湘菜不光是辣,正如川菜不光是麻一样。多放辣椒就是“湘菜”,多放花椒红油就是“川菜”,只能说明厨艺拙劣。湘菜要做得地道,讲究还是很多的,譬如炒青菜,须得把水沥干,大火猛炒,迅速出锅,如此才有鲜爽的口感,水稍多一点、时间稍长一点就成了煮菜,味道相差甚远;腊肉也最好是带皮的,肥瘦相间,肥肉多一些更好,切成稍厚的条,蒸出锅就直接上桌,而绝不应当是普通餐馆里那种“橡皮泥”的样子……

北京的湘菜馆众多,但我印象最深刻的有三家,下面一一介绍:

湘德楼

湘德楼在德外关厢,临街的两层小楼,老板是长沙人,厨师也是长沙人,算的上“原汁原味”了。
有几个朋友非常喜欢这家的鱼头,火候把握很棒,确实很鲜美(推荐不点米饭,鱼头吃完点一份面,就着鱼头的汤汁,极其可口)。但说实话,“剁椒鱼头”算是湘菜,我还是2003年才知道的,现在它倒成了湘菜的代表了。其实湘菜除了剁椒鱼头,还有很多可口的,只是不为外人知晓。湘德楼做的大蒜叶炒黑木耳、青椒炒油渣、剁椒蒸芋头、白椒腊牛肉、香辣米豆腐,口味非常地道(或许不是大家印象里的“经典”湘菜,但确实具备湘菜的神韵),而且色、香、味俱全,更难得的是,许多“湘菜馆”根本吃不到这几样菜。有兴趣的朋友,不妨去尝一尝,绝对让你耳目一新。

潇湘味道

潇湘味道在东四四条,从西头进去大概30米就能看到,门口挂着一排灯笼,另有一块招牌是“虾酷:专业治虾”。
我之前并不知道这家馆子,第一次去,才听说许多名人都喜欢来这吃饭。门面很小,装修也简单,但是有雕花、青竹,冬天屋里还有火盆烧木炭,供人取暖,家乡的味道很浓。
这家的老板、老板娘也是株洲人,每次去都会打招呼,很热情。老板之前是株洲一家很有名气的宾馆的厨师,与如今的“新派”厨师相比,还延续了不少传统:譬如蛋卷(是蒸的,而不是炸的,如今基本没有厨师会做了),一定是要叫“头碗”的,因为照惯例,年夜饭的第一道菜就是蛋卷,所以得名。也正因为如此,这里还能吃到些“小吃”,譬如长沙著名的糖油粑粑,做得相当的正宗。我总以为,如今的厨师厨艺日渐精致,可是不少传统菜肴、小吃的做法和惯例,却毫无了解,这相当可惜。
除了口味,值得一提的是,潇湘味道用的餐具非常地道,上菜用的许多碗都是真正乡里用的碗,造型、花纹,都会带给你熟悉的气息——当然,这得有过经历的人才知道,这一点,也可以算作“吃文化”吧。

恰来恰克

懂行的人看到这个名字,往往会心一笑:在长(沙)株(洲)湘(潭)地区,吃、喝、抽等等一系列动作,说出来都是一个“呷”(发音是“恰”,第二声):呷饭、呷菜、呷烟、呷酒、呷好处……,所以“恰来恰克”,也就是“吃来吃去”的意思,但多出几分随意和亲切,招牌黄底色上歪歪扭扭的“恰来恰克”四个字,更加重了这种感觉。
恰来恰克位置很偏远,在北二外北校门附近,也是两层的小门面,老板也是株洲人,人称“灿哥”。灿哥自己介绍,在北京苦心寻觅,终于找到一个做米粉(是湖南米粉)的厂子,就把馆子开在了米粉厂附近。日常除了学生来解决吃饭问题外,不少都是湖南老乡,大老远跑过来,就为尝一尝米粉(而且是扁粉)。
除了米粉,这里的另一大特色是湖南火锅。湖南火锅与其它地方火锅不太一样,汤料是精心调制的,肉在下锅之前就是做熟的,而且会切得厚一些,下锅只是把鲜香的味道煮进去,吃这种火锅,热气腾腾、香气扑鼻,更美妙的是,越煮越入味,越到后来吃得越爽,那种感觉,完全不同于如今泛滥的“涮锅”——只可惜北京很难买到带皮的羊肉,也就无法体会从火锅里捞出一大块带皮羊肉,几口吞下的畅快淋漓了。

《精通正则表达式》勘误列表Excel版

承蒙各位读者喜爱,《精通正则表达式》2007年出版至今,已经三次印刷了。不少读者在来信提供勘误建议的同时,也反映原有的勘误列表结构不够清晰,勘误没有区分版次,使用起来不够方便。每次收到这样的来信,我都深感惭愧。

所以我制作了Excel版本的《勘误列表》,列出了到目前为止收集的所有勘误,并列出各个版次所对应的勘误,希望能给广大读者提供方便。

《精通正则表达式》(第三版)勘误列表下载:MRE_errata.xls

P.S.

要感谢博文视点的晓菲,她帮我调整了Excel的版式。

怎样翻译更地道:再见,使字句

使字句,也就是“xx使xx如何如何”的句型,已经在译文中泛滥开来。不信,随手挑几篇译文,使字句随处可见:

玉米的高产使玉米价格的大幅度下降,从而常常使农民如果得不到政府补贴就无法继续维持玉米的种植。
她的名字叫雷切尔,正是这个名字使我虚度了整个中学时光。
曾有一次,她给我寄去了一张身着泳装的照片,使得我对她的爱痴狂得简直想入非非了。使常规的活动多样化更有利于减弱享乐性适应的影响。

“xx使xx如何如何”,对不少译者来说,已经如膝跳反射一样正常。使字句泛滥的现象,众说纷纭,这里不多讨论;我想说的是,真正流畅通达的高质量译文,往往很少出现使字句——即便使字句的已经成为“约定俗成”的语法现象,大多数情况下,还是会造成思维的梗阻,因为“xx使xx如何如何”的思维,并不完全符合中文的习惯。

我们翻阅词典,会发现很多动词都解释为“使xx”,在英文中,这是没有错的。因为英文惯用名词做无生物主语,即便不明确使用make、enable、prevent、keep之类的动词,在直接翻译成中文时,要衔接顺畅,也离不开“使”字,下面举几个例子(需要指明的是,我们说英文时,必须特别留意这样“名词做无生物主语”的情况,才能说的地道,“洋味才浓”):

If you take this medicine, you will feel better.
This medicine will make you feel better.

He can do anything because he is rich.
His wealth enables him to do anything.

Whenever I see the orphan, I remember her parents.
The sight of the orphan reminds me of her parents.

We could not start because of bad weather.
Bad weather prevented us from starting.

以上四组例子,前一句是“中式英语”,后一句是“地道”的英文,按照时下流行的翻译思路,必然离不开“使”——“使你觉得”,“使他能够”,“使我想起”,“使我们不能”。

那么,翻译成中文,难道离得开“使”吗?况且,中文本身也有“使动”的用法啊。

不错,中文的确有“使动”的用法,譬如大家耳熟能详的“既来之,则安之”和“劳其筋骨,饿其体肤,空乏其身”,但是据我观察,一方面,中文的“使动”并不常见,至少不如现在翻译体的使字句那么常见;另一方面,中文的“使动”,并没有英文“使”句型那么严谨的逻辑关系:“安”、“劳”、“饿”、“空乏”,并不用于连接两个对象,更多的是描述状态的改变,与英文中“A导致B”的固定形式还是有所不同的。
英文的“使动”拿到中文里会显得别扭,原因或许就在这里。

那么,我们在翻译时,该如何避免泛滥的“使”字句呢?这个问题困扰了我很久,以前也写过《“使”来“使”去,“使”向何方?》,但还是不够满意,最近似乎想明白了点,把结论写在这里,供大家参考。

英文中的“使”字句,一般是表示“A导致B”的情况,也就是两件事情之间的逻辑联系;明确了这一点,遇到大部分“使”字句,我们不妨快刀斩乱麻,只需要理清头绪,把两件事情前后列出来即可,甚至可以省略连词(不用“因此”之类就可以表示因果关系,也是中文的特点之一,正如英文一定要有and,而中文可以直接说“笔墨纸砚”、“柴米油盐”一样):

仍然是上面四组例句,以下分别列出用“使”的翻译和不用“使”的翻译:

这药会使你觉得好些。
你吃了这药就会好些。

他的财富使他能够做任何事情。
他有钱,什么都能做。

见到那孤儿,使我想起了她的父母。
一见到那孤儿,我就想起她的父母。

糟糕的天气使我们无法动身。
天气很糟糕,我们无法动身。

常有人说,语言是活的,有如河流;可是我想,活,不等于无规矩可循,纵使河流,也须依河床前行,恣意放纵,也会泛滥成灾(英文也是如此,blond hair不能说yellow hair,heavy rain不能说strong rain,虽然“意思”是没错的)。这个处理“使”字句的办法,可以应付日常翻译中遇到的大部分“使”字句了,有兴趣的读者,不妨一试。