人在Google

王咏刚的BLOG

原创 Google工程师二三事收藏

新一篇: 人在Google | 旧一篇: 利用抽象语法树检查Python中“未定义”的变量名

------------这一篇先在Google黑板报贴过的---------------

我讨厌“工程师”这个头衔,正如我讨厌一辈子与呆头呆脑的主板、芯片为伍。要是有一天,Google能把多内核的超级计算功能集成到肥皂泡里,然后工程师们就绑上肚兜系上围嘴手拉着手走到阳光明媚的院子当间儿在小方凳上排排坐好一个个充满童趣地仰着脑袋歪着脖子噙着塑料管煞有介事地吹出红的黄的五颜六色的肥皂泡来其实每个肥皂泡都是一个超级过瘾超级纯粹的网络搜索产品,“工程师”这个满是机油味儿的称谓不就可以被曼妙无比的“勇者泡泡龙”代替了吗?

您还甭笑话我,在Google做工程师,没有点无知者无畏的傻冒儿创新精神还真成不了大事。借用北宋第二伟大的词人周邦彦的名句就是:舍不了孩子呀,套不着狼。没办法,谁让Google里面处处都是新奇无比勾魂摄魄俗称“挑战”的新鲜事儿呢。——闲言少叙,讲几件我遇到的新鲜事儿给大家听听,权当是“所作忠而言之兮”了。

1、第一次遇到比自己笨的人

法国伟大的文学家、思想家、革命家孟德斯鸠教导我们说,身为Google工程师的最大好处就是——你总能在第一时间知道自己离“笨得离谱”还有多远。老孟的话得这么理解:“笨”其实是一种美德,远比“厚道”更易让人神往,尤其是在遇到了一个比你更笨的人之后。

有一次,我笨得忘记了该如何在一个复杂的有向图中找出两点之间的最短路径。身边的一位工程师很郑重地告诉我说:“你知道吗?解决这个问题有两种方法,聪明人的方法和笨人的方法。聪明人的方法是:照着算法教科书的讲解,实现那个时间复杂度相当大的名叫嘀嘀哒嘀哒的最短路径算法。笨人的方法时间复杂度最低:找一堆线头来,按照有向图的结构连成一张网,然后一手拿一个顶点,向两边一抻,中间拉直了的那条路就是最短路径呀。”

“哇噻!笨是一种多么伟大的品格呀!”我眩晕得说不出话来。于是,我们这两个自认为足够笨的工程师足足花了两周的时间,用计算机程序模拟了不同材质的细线在北半球的重力条件下相互连接并在两个反方向作用力的影响下向两边伸展的整个物理过程,然后以此为基础实现了时间复杂度最小的最短路径算法。——瞧,在Google,什么东西都可以自己动手实现,什么东西也都可以推陈出新,我们的杰出表现就是最好的证明。

2、第一次和超大老板吃饭

开复博士是我们的大老板,大老板的老板当然就是超大老板。第一次和超大老板吃饭是在无比质朴无比简洁甚至略带些中小城市招待所气息的某某中心餐厅里。大鼻子蓝眼睛的超大老板显然对我们这些工程师的居心不良有所准备,一上来就用流利的中文告诫我们说:“吾于汉学一门仅识得‘谢谢’二字,诸位客官大快朵颐之时烦请务必以英吉利方言互通有无,承让了!”

无奈之下,我们只好将精心准备了三天三夜的用温州话提问的小节目暂时搁置。说来也怪,本来无法见人的英语口语一到超大老板面前就变得比王小丫的中文还要流利。我豪不费力地在59秒的时间里说出了“Kernel 2.6”一共四个英文单词,超大老板也毫不费力地明白了我的意思。他拍了拍我的肩膀,用和我一样流利的英文告诉我说:“小伙子,真人不露相啊,你怎么知道Kernel 2.6只能在1分钟内处理四个单词呢?”

好容易让超大老板明白了我们其实是想让他谈点儿与Kernel 2.6有关的技术问题。超大老板还真不含糊,为了让自己的回答更全面,更准确些,他毅然离席,到旁边桌上与同来北京的几位技术大师晤谈许久——我们正好趁着这个机会平端了筷子大张了嘴巴吃得满桌震荡风雷急,等到超大老板回到座位,我们就指着无数个空盘子很是愧疚地说:“您看您也真是的,一心帮我们解决问题,连自己吃饭都顾不上了,这让我们怎么好意思呢?”

3、第一次见到Foosball高手和大胆子情圣

其实,武林中传言已久的Foosball高手和大胆子情圣是一个人,一个同时拥有着俊朗外表和秀美心灵的工程师,一个脱离了低级趣味的人,一个值得向所有小女生大力推荐的人。

在Foosball的台案上,情圣先生是那种从不轻易出手的人——即便出手,也只出一只手,一只吹雪不见五指的手。事实上,他用一只手就足以将那些曾在业余级别赛事里称王称霸的选手们打成光头加零蛋了。于是乎,情圣在Foosball赛场上成了无人理睬的独孤求败,没法子,只好将精力转移到他本人更为擅长的娱乐舞台上。

大胆子情圣的名头绝不是骗来的。据那些见证过大胆子情圣光荣历史的目击者形容,大胆子情圣曾经在一家餐厅的舞台上被人用红布蒙面,用巨蟒缠身。当时现场有复数的观众晕倒,可我们的大胆子情圣却自行摘去红布,手托巨蟒,亲吻蛇身,并与舞台上的异族美女共舞数曲方散。一时间,“胆大如斗,情深似海”的八字评语传遍了公司上上下下。

好了好了,先聊到这里吧,Tech Lead对我沉迷于胡言乱语的行为已经出离愤怒了。“好好编你的程序,别发癔症了。”没错,我是个工程师,还有无数程序要编。刚才说的这些事儿,大家千万别当真。呵呵。

发表于 @ 2006年05月23日 21:35:00|评论(loading...)|编辑

新一篇: 人在Google | 旧一篇: 利用抽象语法树检查Python中“未定义”的变量名

评论

#剑神一笑 发表于2006-05-23 22:15:00  IP: 222.212.10.*
呵呵,GOOGLE是个有意思的地方
#hoho 发表于2006-05-24 13:18:00  IP: 218.242.79.*
用线则受限于线。工具不通用则不便。
#qiurang 发表于2006-05-24 13:41:00  IP: 203.222.183.*
我讨厌技术人员拽古诗词,比如“道法自然”什么的。靠技术吃饭,搞那些忽悠谁呢?
知到了李开复的眼光也就那样了。
#brucesea 发表于2006-05-24 14:47:00  IP: 210.94.41.*
想问问你真的模拟了线拉伸的物理过程吗?
我是真的很笨:)
#xchilde 发表于2006-05-24 16:57:00  IP: 202.8.27.*
Is the first story a true story?
That method works efficient in real life because it's more like an unlimited-scale parallel computing system, in which you can try all the solutions at one time. If your computer simulation based algorithm is so good (as you said, it has the lowest time complexity), why not publish it and benefit the whole world, also get a Turing Award for yourself.
#拽文 发表于2006-05-24 17:36:00  IP: 220.246.57.*
拽文是某些人的爱好,哈哈,说不好听的就是装x
#j 发表于2006-05-24 17:21:00  IP: 218.80.215.*
我们这两个自认为足够笨的工程师足足花了两周的时间,用计算机程序模拟了不同材质的细线在北半球的重力条件下相互连接并在两个反方向作用力的影响下向两边伸展的整个物理过程

有程序吗?显示来看看,吹牛的吧?
#veteran 发表于2006-05-24 17:21:00  IP: 59.37.15.*
技术牛,
文字也精彩。
牛人都怎么修炼的,奇怪。
指导下。。
#abc 发表于2006-05-24 18:16:00  IP:
不知所云,没看出有什么意思的地方来
#jouzen 发表于2006-05-24 18:16:00  IP: 203.81.22.*
google令人神往。部分同意楼上的话
#cba 发表于2006-05-24 22:27:00  IP: 219.134.73.*
在百度上谷歌了一下,发现李sir说几年后中国人将只知百度而不识谷歌。
#baker 发表于2006-05-25 11:10:00  IP: 220.178.33.*
TO xchilde
是个好主意
#哈 发表于2006-05-25 11:10:00  IP: 210.83.223.*
你是google的啊,才知道,失礼了
#刘道灿 发表于2006-05-25 09:11:00  IP: 218.94.131.*
是啊,把代码拿出来共享一下,,,这么精妙的算法应该公开、、
#pony 发表于2006-05-25 09:21:00  IP: 218.106.82.*
google和你一样都是大忽悠
#google1 发表于2006-05-25 13:52:00  IP: 219.136.34.*
有点讨厌google了
你好,是你自己的事
你说,我说,写blog,发photo
地球 人都知道 了!

打工就是打工!
Boss就是Boss,干点实事,不行嘛!



#swfd 发表于2006-05-25 14:05:00  IP: 61.141.179.*
你说的方法很有趣,但不可能是时间复杂度最小的,相反,到
很可能是最大的.
不过有趣很重要, 从这个意义上说,google的文化值得提倡.
我们需要有效率的东西,更需要有趣的东西.
#XianBin 发表于2006-05-25 16:19:00  IP: 221.221.95.*
Google被说得越来越神奇、同时也充满神秘的色彩了……

真奇怪,每次看王咏刚先生的文章,不知道要笑还是要哭……

说不定有一天有人会跳出来说:“看吧,王咏刚把一大堆坏习惯都传给后一代程序员了!”。
#peek 发表于2006-05-26 02:41:00  IP: 131.107.0.*
忽悠
#freshmeat 发表于2006-05-29 16:44:00  IP: 220.248.121.*
王咏刚是谁啊?
#shshsh_0510 发表于2006-06-08 15:46:00  IP: 61.194.199.*
呵呵,丑现
原先偶然看过你的网站,只记得有个笑话集锦挺有意思,还有你自己的书的部分章节,写的也挺好的
今天偶然浏览,原来还是个小孩子:)
不过,你们两个那个最短路的做法,的确很笨,并不是什么杰出表现,如果你真的去模拟了,就会发现你说的那个什么什么算法其实就是将这种模拟的想法正规描述后的,较好的一种而已。
#spirit.moon 发表于2006-06-15 13:22:00  IP: 219.232.42.*
也别把GOOGLE当成神了. 大众最容易犯的错是很容易被媒体煽动,眼睛很容易迷糊.

说人家工程师写东西爱用古文词藻, 显然是心理不平衡,你写不出来也用不着骂别人.
#david 发表于2006-07-20 22:45:00  IP: 61.153.1.*


从下午开始找中西历换算的软件,找到你这里,你的两千年中西历速查是最好用的。多谢老兄,来道个谢。我学历史的,将把你的软件推荐给师兄师妹们,用的过程中发现问题,再向老兄反映。私心想一下,如果还能把回历和日本历法放进去,我就全不用查工具书了。

老兄真是厉害,程序写得好,文字也写得好。
#horsetery 发表于2006-07-22 13:23:00  IP: 220.168.210.*
拜读了您的历法转换软件,非常好用!
#道法自然 发表于2006-07-22 17:07:00  IP: 219.134.169.*
拜读了道法自然这本书,感觉写的非常好,到位!
不像一些书搞些copy些code或讲些语法什么的的,我个人认为
有思想才是最重要。

当然技术是必须的,工具也是必须的,但当然认识了或学会了这些之后呢?应该要找一些所以然的东西吧。。。
#道法自然 发表于2006-07-22 17:07:00  IP: 219.134.169.*
拜读了道法自然这本书,感觉写的非常好,到位!
不像一些书搞些copy些code或讲些语法什么的的,我个人认为
有思想才是最重要。

当然技术是必须的,工具也是必须的,但当然认识了或学会了这些之后呢?应该要找一些所以然的东西吧。。。
#LZW_LZ77_Flate 发表于2006-08-01 23:08:00  IP: 218.108.86.*
5555哭。。。你那个写数据压缩的。。只到LZ77。。5555。。。前面也很精彩。。长了不少知识........决定跟那2个聪明的以色列人死磕....
#bokeland 发表于2006-08-15 20:21:00  IP: 221.221.146.*
咏刚大哥, 帮忙推荐一下博客蓝的搬家服务好不? 我的QQ:49624
目前支持的站点有:* BlogBus.com/* MSN Spaces (支持新版MSN Space Live)/ * 网易部落/ * 新浪博客 * 搜狐博客 * 和讯博客 * Donews博客 * 敏思博客 * baidu space
搬家站点在: http://banjia.bokeland.com
#阿呆 发表于2006-09-01 08:44:00  IP: 192.168.0.*
呵呵,写得非常好哈。受教中........
另一个不错的类似技术文章:
http://blog.csdn.net/cxxsoft/archive/2006/08/04/1019656.aspx
#匿名者 发表于2006-11-01 19:30:00  IP: 207.46.89.*
有时候看到一些照片上工程师的桌子上实在是太花哨了,是否有些为另类而另类呢?!
#ok 发表于2006-11-18 08:22:00  IP: 221.222.77.*
不知道说什么,只有你自己清楚吧
#qinghao1 发表于2007-07-05 11:01:30  IP: 221.236.147.*
学习一下哈.
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © 王咏刚