【谷歌基情实录:和JeffDean在同一台电脑上写代码】

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

【谷歌基情实录:和JeffDean在同一台电脑上写代
码】
谷歌的伟大有一多半要归功于公司中亲密无间、协同工作的程序猿们!向伟大的猿类童鞋致敬!
今天,就让我们翻开谷歌程序员们的基情实录,扒一扒《纽约客》笔下谷歌两大元老Jeff Dean和Sanjay Ghemawat手拉手走过的那些年。

20XX年三月某日,六位谷歌的顶尖程序员齐聚一堂,眉头紧锁,当时谷歌正处于前所未有的紧急状态。

公司的核心系统罢工了,也就是页然后建立索引的爬虫系统。

它要是页和新闻都没法被检索到了!所以,就算这时候用户还能凑合的在输入检索信息,但是得到的结果都是五个月前的内容了。

这个事儿其实挺严重,因为当时的谷歌还不是现在这个庞然大物,他们需要资金需要钱,那就要向外界展示他们技术没问题!
当时谷歌还刚好正在和雅虎谈项目,为雅虎提供搜索引擎。

谷歌承诺提供一个比当时谷歌搜索引擎还大十倍的索引,为什么要这么大的量呢,因为按照当时的情况,互联网上的数据一年翻一倍(现在岂止一倍),那这个索引刚好能小跑儿地跟上时代的步伐。

如果谷歌失败了,建立不了这么大的索引,那他们就会沦为一个时间胶囊,检索的结果还都是老内容,而且跟雅虎谈好的生意肯定崩了,谷歌就很有可能面临着资金链断裂然后GG的结果。

为了解决这个问题,工程师们扎营在一间靠近楼梯的会议室里,郑重的打开他们的电脑。

Craig Silverstein是谷歌的第一个员工,在两位创始人们还在自己家创业的时候就已经跟着他们混了。

Silverstein当时还是个
27岁意气风发的小伙子,工程能力极强,重写了很多谷歌的代码。

他和Bogdan Cocosel,一位罗马尼亚的系统工程师搞了四!天!四!夜!但是一无所获(是的,都是套路,先夸上天,然后pia!踹倒~)
Silverstein在回忆这段经历的时候说,额了个神,闹鬼了,我们分析了半天找了半天试了半天捣鼓了半天呀!都没用我们真的弄不明白这是为什么!
在Silverstein抓耳挠腮的这几天里,坐他左手边,一个默默无闻的程序员却有了点思路。

Sanjay Ghemawat是一位33岁的MIT毕业生,生得是豹头环眼,但两鬓黑发已经花白。

Sanjay几个月前才进入公司,跟他一起来的还有一位叫做Jeff Dean的童鞋。

Dean原来在一家数字设备公司工作,后来跳槽到谷歌。

Dean和Sanjay原来也经常在一起玩耍,后来Dean离开了华盛顿DC,Sanjay也跟着过来了。

他们两个关系特别好(unusually close),老喜欢一起写代码。

在办公室里,Jeff把椅子推到了Sanjay桌子旁边,自己的桌子空着。

Sanjay敲代码的时候,Jeff就一边儿斜靠着他,一边儿在Sanjay耳边指正他的错误,不时的还调戏一下Sanjay。

Jeff和Sanjay也加入奋战大军,开始尝试找到问题的根源。

他们发现代码里面有些单词漏掉了,还有些单词拼错了。

好几天以来,他们都在寻找代码中的漏洞,一点点剥丝抽茧的查代码逻辑错误。

慢慢的,所有的代码都查完了,但还是找不到问题。

程序员查bug也是有逻辑的,通常会分成很多层。

先是最上面的用户交互逻辑层,然后是代码实现层,数据层等等等等,一直到最底的硬件层。

当查到最底下的硬件层的时候其实是最困难的,因为那里都是0、1组成的世界,是芯片中硅元素的碰撞,和高低电平之间的交互。

某个在交互层一眼就能看明白的东西,在底层世界你要花半个小时才懂得是什么。

终于,在第五天的时候,Jeff和Sanjay开始意识到问题可能不是出在代码上,而是出在硬件的物理层上!他们将索引的文件以二进制的形式打开(是的,就是一堆0xblablablabla或者10的东西),然后尝试从这堆看着跟乱码一样的内容中找到问题。

安全局前技术总监Randy Garrett记得曾向该机构的主管Keith Alexander将军展示这项技术。

Hadoop执行分析任务的速度比之前的系统快了*****倍。

它成为了一种新的情报收集方法的基础,一些观察家称之为全面收集。

Jeff有一种不安分的本性:一旦他能看到解决方案的轮廓,问题就变得不那么有趣了。

20XX年,当云计算开始为世界所接受时,他开始与斯坦福大学的计算机科学教授Andrew Ng合作。

Andrew Ng当时正在谷歌主持一个秘密项目,研究神经网络-由虚拟神经元组成的软件程序。

Jeff在他的大学期间曾经接触过神经网络;那时的神经网络还无法解决现实世界的问题。

Ng告诉Jeff这种情况正在发生改变。

在斯坦福大学的研究中,当给神经网络输入大量数据时,研究人员取得了一些令人兴奋的结果。

Ng认为,凭借谷歌的规模,神经网络将不仅有用武之地而且会非常强大。

神经网络系统与传统的电脑程序大不相同,该系统的操作不是由程序员进行常规的编码建成,而是通过输入与反馈学习到。

在大学期间,Jeff沉迷于学习神经网络,这一点可以从浴室里成堆的教科书就可以看出来。

Jeff开始致力于谷歌大脑项目,然而,那时谷歌内部大多数员工都认为这个项目毫无价值。

不仅经理Alan Eustace说它是在浪费人才!,Sanjay甚至质疑他你究竟是在做些什么?。

此后7年内,谷歌大脑团队成功训练出了神经网络,完胜机器翻译、机器语音以及图像识别。

最后,他们替换掉谷歌的搜索
结果排序和定位广告这些最重要的算法,谷歌大脑成为公司内成长速度最快的团队。

Claire Cui将Jeff的创举视为谷歌在A.I领域发展的转折点:公司里,有人支持这个项目,也有人认为它是在浪费时间,但Jeff坚信它将会成功。

AI似乎是一项繁冗复杂的大工程,所以Jeff研发出了一项程序TensorFlow,用于创建AI的分布式计算系统(MapReduce)。

TensorFlow简化了在计算机之间散步神经网络的过程,将他们集中于一个大脑。

20XX年,TensorFlow一经发布,就成为A.I领域的通用语。

近期,谷歌首席执行官Sundar Pichai宣布公司将A.I 放于第一位,并且将任命Jeff为领头人。

现在Jeff带领着3000人的团队,平均每星期有四天都在运营谷歌大脑。

另外他还会去到全球演讲、为新的电脑芯片(用于神经网络的张量处理单员)开周例会议、协助AutoML的研发使用神经网络来建设其他网络的系统。

反观Sanjay,他依旧是个个体工作者,独自编写程序,也不需要其他人。

对此,他表示很庆幸:我并不想像Jeff那样工作。

他现在致力于研究一款软件,让工程师们可以更容易地整合和控制大量程序(例如寻找新闻、图片和搜寻价格),并在用户输入搜索词时就开始运行。

每周,他都需要和Area Tech Leads集团(谷歌工程绝地委员会engineering Jedi council)会面一次,保证技术更新能够即时传递到整个公司。

如果将Google比喻为一座房子,Jeff在为房子增华添彩,而Sanjay则支撑着房子的基地,加固房梁,拧紧螺栓。

同时,在他们的周一编码日,Jeff和Sanjay仍会聚在一起研究新事物。

Jeff说:我想开发一个巨型机器学习模型,一个可以完成成千上万不同任务的模型。

Jeff多年来一直在考虑这个问题,直到最近,他才肯定了它的可行性。

他和Sanjay打算建造一个原型,团队其他成员就可以按此继续研发在软件世界,最好的领导方式
是使用代码。

Jeff的妻子Heidi说:他们很想念对方。

自从他们开始各自工作后,合作就越来越少了。

三月的某个周日,Jeff和Sanjay相约去Cupertino徒步旅行。

天气明亮清新,但是有些热。

Jeff开着一辆蓝色特斯拉电动跑车,Sanjay的红色特斯拉Model S紧随其后。

Sanjay喜好阅读,Jeff 经常打球。

建造March index的20年后,Jeff越来越像退役的运动员,他的皮肤也被烈日晒成黝黑,而Sanjay看起来依旧年轻焕发,不曾老去。

穿过茂密森林,有一条道路环绕6公里。

Jeff带路,走在丛林中,他们追忆起以前Google如何快速发展。

Sanjay回忆起,公司业绩获得第一次剧增后,给一个厕所隔间装了两个便池,我还记得Jeff说,两个比一个好。

当他们走回森林,Jeff向树的远方瞥了一眼,说到:那边我们可以看到更好的风景。

这条小路通向一个小山顶,高而宽广,没有树,可以俯瞰全景。

虽然有薄雾笼罩,他们依旧看见了南边的圣克鲁兹山脉,以及东边的使命峰。

相关文档
最新文档