内核内核恐慌2016年1月4日· 1:19:17

32. 覃超专访(之二)

覃超在本集中详细讲述了Facebook Phone项目(代号Buffy)的诞生与放弃过程。该项目始于2010年,意图打造一款基于HTML5技术的社交手机,由Bret Taylor和Matthew Papakipos主导,与HTC合作硬件,修改Android系统并移植WebKit浏览器,采用独特的三进程架构(第一方应用、第三方应用、网页浏览各占一个进程)。然而,由于HTML5在移动端性能极差——JavaScript单线程导致UI卡顿、耗电严重、网络数据消耗大,用户体验远不如iPhone 4,项目不断降级,最终演变为Facebook Home后也被放弃。同期,Google+的竞争促使Facebook暂停Go China计划,收缩非核心业务。覃超还回忆了奥巴马2011年访问Facebook总部的情况,以及他在项目中负责的data layer框架开发。

  1. 0:00开场
  2. 1:15竞赛高手
  3. 5:58透明文化
  4. 13:04产品之道
  5. 24:27手机团队
  6. 31:57Buffy计划
  7. 39:47WebKit移植
  8. 46:04三进程架构
  9. 58:06项目缩减
  10. 1:04:15黑客趣闻
  11. 1:11:20奥巴马到访

转录文稿

开场0:00

Host0:00

欢迎收听 IPN Podcast, 网络旗下的 IT 技术主题娱乐节目 《 内核恐慌 》。 我们号称 "hardcore",但也没有干货 ; 想听的人听 ,不想听的人就别听 。

本节目的网址是 kernelpanic.fm, 我们推荐大家使用 Podcast 客户端订阅节目 , 详情请访问 ipn.li/faq。 欢迎你为本节目捐款 , 捐款地址是 kernelpanic.fm/donate。

捐款金额随意 , 只要是 8 的正整数倍就可以 。 捐款不会给你带来什么 ,不捐也不会让你失去什么 。

上期我们请到了覃超给我们讲他从怎么在 CMU 上学 ,以及加入 Facebook 的故事 。 我们今天接着这个访谈的系列的第二期 , 讲这个 。

我们把这个画风接着上期的 Facebook 的 Bootcamp 讲起 。

覃超0:53

很高兴和大家见面 。 我也听了一下上期的节目 , 我觉得我上期的地方的话可能废话稍微有点多 ,但我们这期的话是想把精彩的地方讲得更加密集一点 , 然后让大家觉得自己的时间都是花到了有趣的内容上 。

Host1:09

上期我们讲到的那个 Facebook Bootcamp, 后面有些故事还没有讲完 , 那我们覃超你再接着跟大家讲一下 。

竞赛高手1:15

覃超1:15

好的 。 我上次仔细听了一下我自己讲的那个 Bootcamp FM 这边的话 , 我还有一个小的感觉 , 就是我没有我觉得我没有 cover 到的就是 , 当时的话我到了这个 Bootcamp 的时候 , 还有一个最大最大的印象 , 就是说我看了一下我旁边这些人 ,以及这些组里面的这些人 ,以及他要我们要做这种 onboard training 的时候给我们的各种导师 , 就他们的背景都是非常强的 。

那时候给我一种感觉就是非常的兴奋 ,但是也有一点点心里很慌 , 或者是用斗鱼上的话讲的话就是心里好慌啊 。

Host1:56

为什么 ?

覃超1:57

它里面有很多像 Stanford、MIT、 伯克利 、CMU 的那些毕业生 , 就是这种名校很厉害的人。 同时的话还有一批类似于刘天成这样 ,但是不 , 刘天成不在 。

也就是说当年 SMI、ICPC 或者是 Top Coder 上面特别厉害的这些编程竞赛的人 ,他们很多就是 。

Host2:20

打拳局的人物 。

覃超2:21

对对对 , 就是参加编程竞赛的 。 那时候豪门队的 , 比如说中国的像清华 、 北大 、 交大的这些豪门 。

同时的话还有就是变态级的东欧的那边的 , 比如说华沙大学 、 莫斯科大学类似于这种人, 就一些怪物级的 , 然后都在这里 。

有一些我们知道的就是在 Top Coder 上面红色的这些 ID, 红色的 handle 的话也在这个比赛里面 。 就比如说之前的话中国选手里面做得特别好的 ,有 Older Big, 就是 OB。

如果你们相当于是在 5 年前或者 10 年前打 Top Coder 的话 , 应该就知道这个人物了 。 就是 OB,他原来也在 Google 北京工作的一个人。

然后还有一个叫陈志明的 , 就是 DMX 大漠狂沙吧 , 这个也是参加过世界总决赛拿过第一名和第二名的人。 他们都在叫陈志明的 。

接下来还有沈光浩啊 , 沈老师啊 , 还有参加竞赛的张一飞 , 还有写过国家队论文的那个李锐 , 李老师 。他写的是关于线段树的文章 , 就是现在的话你做程序竞赛的话 , 大学生的程序竞赛 , 线段树基本上是一个必考的内容 ,以及线段树的加强版 。

Host3:36

你这里肯定要解释一下什么是线段树 。

覃超3:39

线段树就是一种数据结构 , 然后可以让你很方便的就是进行区间的判断 , 然后以及裂变一个区间成好几个区间 , 同时合并这个区间 , 然后时时刻刻询问你从比如说 100 到 1 之间有多少个这样的标记 , 类似于这种一个过程 。

可以用的一个场景比较类比的话 ,但是不太准确的话 , 就比如说订票系统 , 火车的订票系统的话 , 从广州开到北京的话这么长一段路的话 , 然后你不停的买票 ,不停的买票 , 你买了其中一小段的话 ,其中然后它头和尾就会裂变成两段 , 变成 available 的嘛 , 然后再继续 , 然后中间有缝隙的话可以马上生成新的票插上去之类的 。

然后当有人退票的话 ,他的退的那个票的头尾两段可以再连起来 , 让别人再买 。

Host4:31

其中一段是吧 。

覃超4:31

对对对 。

Host4:32

这感觉怎么 12306 特别用的比较多哈 。

覃超4:37

我不确定里面是什么 ,但是大概是这么一个过程 。 线段树 , 对 , 只要参加竞赛的基本上这个是必做的一个类型 。

还有一波人的话就是这种传统的大牛 , 就是之前在电视里面或者新闻上面看到的这些人物 , 比如说就是之前还火的有个叫 Google Waves 的 ,以及做 Google Maps 的那个老大 ,有个叫 Lars 的 。

因为当年我经常去听那个 Google I/O,Google I/O 里面就是有一些 Google 的牛逼的人, 就是经常我去听那个 WWDC,Apple 的话与之相对应的就是 Google 的 Google I/O。在里面的话就有一些很厉害的人在介绍自己的产品吧 。

当年的话特别火的有一次是有一个叫 Google Wave 的 , 当时因为我也在 Google 北京实习 。 好 , 介绍这个人就叫 Lars,L-A-R-S,Lars。他同时也是之前 Google Maps 的掌门人, 这样 。

后来的话他是因为就是 Google Plus 的原因 ,他的项目被砍掉了 , 然后被 Facebook 挖过来 。他和我是同一天入职的 , 所以我是在 Bootcamp 的时候认识他的 。

我一看到他 , 我好像是在 YouTube 里面其中有一期 Google I/O 的时候见过你怎么的 , 我就跟他打招呼 。 那时候就感觉遥不可见的一种人物 , 或者是所有这些东西感觉好像变成现实一样 。

Host5:58

OK。

透明文化5:58

覃超6:00

就是另外还有一个叫 。

Host6:01

奇妙这种 。

覃超6:02

对对对 。 另外还有一个叫 Kent Beck 的人,K-E-N-T B-E-C-K,Kent Beck。他就是 JUnit 的创始人, 就是平时经常用的 JUnit 以及安卓下面经常各种基于 Java 的这些测试框架 , 都是基于 JUnit 的吧 。

就他写的 ,他同时后面也是 extreme programming 的发起人, 就是极限编程 ,TDD 就是 Test Driven Development 的创始人。 这些的话就是原来看过他们的书嘛 ,也用过他们的软件 , 比如说 JUnit。

因为只要你写 Java 的话 , 要写的 unit test 的话 , 基本上就是基于 JUnit 的 。 然后再到后来的话 , 就是极限编程在国内很火的 , 要做 Test Driven First 之类的 。

所有这一套理论就是基于他的 。他刚好也是和我同一天入职的 , 就是同一期 。 一般是他两个星期一期入职的 ,他是和我同一期入职的 。

当时在里面就看他们的时候就在乎我好神奇啊 。他们大概都是四十几岁吧 , 相当于就是说比我大了一辈一样的 。

后面还有一个 , 还有一个比较有趣的意思 , 就是关于 Lars 的话 , 后来的话我还经常去看一下他的写的代码 。Facebook 有趣的一个地方就是说 ,他基本上所有的代码都是开放的 ,以及每个人写的代码的话都要经过 code review。在 code review 这个系统里面 , 你就可以不仅仅就是审核代码 , 评测别人代码 , 还有更重要的一个作用 , 你可以互相去借鉴或者是阅读别人代码 。

我有时候就去看一下 Lars 的代码 , 我在想这哥们年纪这么大了 , 到底是写还是不写 , 到底是厉害还是不厉害 , 到底是说的还是忽悠的 , 像中国的有些可能领导一样的之类的 。

后来发现他还是写 ,而且写的好多啊 , 写 JavaScript 也有 , 写 PHP 啊 , 反正很厉害的一个 。 就是 Lars, 就是 Google Maps 的掌门人 ,以及 Google Wave 当年的老大 。

Host7:57

那个时候你们在那个内部已经用上那个 Fabricator 了吗 ?

覃超8:01

对 , 已经用上 Fabricator。 当时不叫这个名字 , 叫 DevCamps。

Host8:05

对 , 那还没开源嘛 , 对吧 ?

覃超8:07

当时还没有开源 , 对的 。

Host8:08

OK。

覃超8:09

好 , 那我继续啊 。 就是这报道的时候 , 我就了解这么多牛逼的人, 我就觉得哎 , 感觉真的是一个机会 , 让我既非常的这种觉得 challenging, 同时的话也有点 intimidating, 就指的是压力很大 , 类似于这种 。

然后后来成为我好朋友的是几个中国人 ,因为大家都是同胞嘛 ,其中有个就是徐万鸿 , 就有时候的话我们现在他也回国了 , 然后我们一起在国内的话也是好朋友 。他现在是神州专车的 CTO,有时候做一些活动的时候我也把他叫过来 。

同时的话我们还是在经常切磋台球的 。 另外还有一个叫陈志明的 , 就是我之前介绍的 ,他做 Top Coder 很厉害 , 做 design 的话 ,他自己也是之前数学竞赛的 。

所以我就觉得一个公司如果能把特别牛逼的人吸引过来 , 我觉得这个公司就是最大的一个财产 。 就算你在项目上面某一两个项目 , 后面要说的就是不是进展特别顺利的话 , 只要有这么一批核心的人留住的话 , 你的公司你的文化还是会越走越好的 , 就是说 。

然后第二个我要补充的一点就是说 , 当时

第一天的时候 ,他就给我那个把所有的笔记本和手机都配好了 。 手机的话公司有帮你配的话 , 就是相当于帮你报销所有的费用 , 你打电话都不用钱的 ,而且是国际 , 打所有的国际电话都是 available 的 , 你可以打中国的都行 。

然后在这个电脑里面的话 , 它是用 Chrome 的那个 ,是用 Sorry,是用 Firefox,不好意思啊 ,是用 Firefox 的那个浏览器 。 它当时有个收藏夹 , 收藏夹第一页就显示了我们的所有数据 , 所以我们整个的 data dashboard 就在这个第一页里面 。

它没有任何的权限控制 , 你只要是员工你就可以打开看 。 然后 dashboard 里面有各种各样的数据 , 比如说日活 、 月活 、 周活 ,以及针对每一个产品 , 针对每一个 feature,feature 指的功能 , 它的具体的就是 news feed, 比如说这几天有多少人用 ,photos 有多少人用 。

另外的话 , 它有很强的类似于这种股票交易系统的查询功能 ,也就是说你可以限定最近的 6 个月以来 , 日本的 30 岁以下的人用 photo 的平均在线时间 , 类似于这种限定都可以查出来 , 就是很厉害 。

然后第一点的话就是说它各种工具非常强大 , 第二点的话它非常重视数据 , 就重视数据的采集以及展示出来 。

第三点的话就是非常的透明 ,他们讲的就是 open, 就 we wanna keep our engineering culture open, 类似于这种 。 就是说没有任何的权限控制 ,并不是高层才能看这些数据 , 可能有一些非常机密的 , 可能只有这个高层看 , 我并不知道 。

但是像这些的话 ,有外面的人觉得比较敏感 ,他都是放给所有人来看的 , 这样 。 然后在所有这些内部的文档 、 页面 、 内部的网站里面 , 都非常明确在右边或者在上面写着红色的字 , 就是 confidential, 就是公司里面的机密 , 你不能说出去的这种 。

但是它的确是对员工非常的开放 。

Host11:15

OK。 这个 dashboard 这个是专门有一组人在开发吗 , 还是怎么样 ?

覃超11:20

是的 ,是我们的 growth 还有这个数据组 ,他们来维护和开发的 。 就是做各种各样的 dashboard 啊 ,以及他来维护这一套系统 ,以及负责数据的采集 , 后期的展示 。

因为这数据量非常非常大嘛 。 当时的话我们用户已经是

6 亿多人的 , 所以的话我们对员工 , 对 Facebook 自己员工是 100% 的数据都上传 ,但是对用户的话我们已经做了 sampling, 就是只传 1% 的用户 , 随机挑 1% 的用户的数据 。

Host11:55

不然存不过来了 。

覃超11:56

对 ,但是即使这样的话 , 每天的要处理的 log 都是上 T 的 , 这样 。 长年累月的话就是机器根本传不下嘛 , 然后你就要搞一个 HDFS, 然后同时搞一个大数据的 pipeline 来处理这些所有的 。

然后 LinkedIn 的话 , 自己开源了自己那些大数据的 , 比如说 Kafka, 比如说 Spark 都非常出名。Facebook 也有很厉害的 ,有一个叫 Petel 的 , 比如说 。

只不过是 Facebook 的话这些东西没有开源出去 , 所以说话在这块的话就没有那么名声大噪吧 。 对 ,Facebook 也有比较强的关于大数据的处理 。

。 接下来再讲 , 就是说后来的话 , 各种各样的邮件啵啵啵啵就进来了嘛 。 因为当时在公司的话 , 第一次接触这种环境有一点那个手脚应付不及 , 然后就跟着他们就设了各种样子的 filter 在邮件里面 , 就是把各种邮件进行分类 , 类似于这种 。

然后我当时记得第二天的时候 ,不是给我发了一个任务 ,在上一期的我讲啊 , 讲那个就发了一些任务要我开始做的话 。

然后第二期的第二天的时候 ,他还有一个特别牛逼的 onboard training,是由 Chris Cox 来主持的 。Chris Cox 的话是整个 Facebook 的一个 VP of product, 就是说整个他的产品他是由他来把控的 。

产品之道13:04

覃超13:20

然后 news feed 这里也基本上是 Chris Cox 来负责的 。 后来他就创立了那个 Facebook 的 Creative Labs,在这个 Creative Labs 里面就做了很多小的 app 之类的 。

然后他当时进来之后, 就给我们讲整个 Facebook 的发展过程 , 怎么从一个公司 , 怎么从一个公寓里面的一个项目 , 就是大学公寓里面项目 , 然后开始在哈佛校园起步 , 然后慢慢推广 , 大家火起来了 , 扩张到不同的不同的学校 。

然后再说他亲身经历的事情 , 比如说 05 年的时候 ,06 年的时候 ,他当时做的一个事情就是把公司搬到 California, 然后每天不停的就要加 server, 加 server,因为实在是量太大了 。

当然他也说可能是我们的代码写的不好 ,因为他们很多人根本就是没有太多的这种关于高可用性啊 , 然后就是大规模性应用啊 , 就是 scalable distributed system 之类的经验 , 可以说一些说他们写的东西的性能可能并不是特别好吧 。他当时还介绍自己装过机器 , 手工把这些服务器一台一台的架到那个机器上去 。他先刷这个服务器的那个操作系统 ,以及上面预装的软

件嘛 , 然后做好了之后把它启动起来 , 然后插到那个机箱上面去 。 然后再到后面的话 , 推广到越来越多的学校 , 然后把 Facebook 做成一个正经事情了 , 然后再推广到整个就是非学生的群体去 。

现在的话才发展到这么大的规模 。 我当时印象特别深刻的就是这个 Chris Cox 啊 , 现在的话他在 Facebook 也是相当于二号人物或者三号人物那种 , 仅次于 Sierra Sandberg 吧 , 比如说 。

对 ,他有一个最大特点就是人帅 , 这个只是取外化啊 。他的演讲特别特别有号召力 , 就是他讲的并不是非常快 ,但他的语气你就还有他用词你就觉得非常非常感告力 , 就仿佛一下子给我们带入到了当年 Facebook 早期激情澎湃 、 跌宕起伏的创业的岁月 , 这样 。他当时还讲了一个特别有趣的功能 , 就是说

他想给大家宣扬一种事情 , 就是说我们在做产品的时候 , 一定要把 social 放在我们的头脑中 。他当时说 social 在 Facebook 最大的一个应用就是在 photo 上面的 。

当年的话有很多做 photo 做得很好的 , 那时候各种盘也好 , 那种做得最好的是 Flickr 这种应用 , 对吧 ?

Host15:49

对 , 没错 。

覃超15:50

那时候 Flickr 是老大 。 然后 Facebook 出来一个 photo 的时候 , 当时的话大家也只是正常的去传各种照片嘛 ,他们就想哦 ,Flickr 好厉害 , 好厉害啊之类的 , 可能当时只有 Flickr 的 1/100% 的这个量 。

然后他们就有一个团队就一直在想怎么把这个 social 加进来 ,social 加进来的时候他就举了一个例子 。 后来终于想到了一个突破的那一点 , 就是加了个 photo tag,也就是说你传了这个 photo 在 Facebook 之后, 你还可以给这个 photo 打一个标签 ,也就是把你的朋友是谁圈出来 , 像这样 photo tag。

就因为这一个功能 , 整个 Facebook Photos 出现了整个爆发 ,不到一年时间就赶过 , 就超过 Flickr 变成世界上最大的 photo sharing 的网站 。

Host16:33

对 。

覃超16:33

他就说这么一个功能的话 , 就是那个 aha point, 就是你在做一个产品的时候 , 开始的时候你可能比较长的一种冬眠期啊 , 就是说或者是一个储存量变的过程 , 这时候你要做的就是说不要放弃希望 。

另外的话 , 找到这个这么一个 magic point,他说的就是 aha point, 这么一个东西 。 注意 Facebook 的话 ,因为 Facebook 是 social 的老大嘛 ,他说强调的就是你要把 social 的基因做在你的产品里面 , 就是最后变成了一个 photo tag。

因为这个东西一下子打开了 , 怎么 。

Host17:06

对 ,因为当时我记得很清楚 , 就那个功能 , 你当时有很多 , 比如说你去参加一个 party, 大家会拍照嘛 , 对吧 ?

覃超17:13

是的 。

Host17:13

然后最后照片都共 , 首先照片共享是一个很困难的事情 , 就是有可能是别人拍了你跟几个人合影 , 你又拍了你跟别人的几个人合影 ,但是传统上都是个人放到个人的那个相册里面去 , 然后互相也拿不到 , 对方也很麻烦管理嘛 。

然后后来有了那个 tag 的功能 , 就可以 ,他不光是 tag,他 tag 完了之后还会通知你嘛 , 比如说你的 。

覃超17:34

是的 。

Host17:34

你被你在你被谁的照片里面出现了 , 对吧 ? 然后你可以顺藤摸瓜找到那些在这个聚会上面去你有你出现过的这种照片 , 然后你可以找到你相关的别的照片 。

就这个功能瞬间就把那个照片的社交的功能激活了 , 当时觉得是非常非常牛逼的 。

覃超17:52

是的 。 这个功能现在想起来啊 , 就觉得是天经地义的 , 或者是理所当然应该有的 。 但是他从 Facebook 出来 photos 在做这个功能 , 大概花了一年多的时间才想到这么做 。他们开始的时候还想了一个特别搞笑的一个办法 , 就是说你传了一个照片之后 ,他就会鼓励你 , 就是把这个照片 , 首先这个照片肯定会推到你所有朋友那里去 , 然后你就给你所有朋友群

发一个类似于邮件一样的东西 , 给他说哦 , 我传了这个照片怎么怎么的 , 你要不要看一下 。 另外的话 , 后来他就说那要不要我们做一个 , 就是这个 photo 里面有其他的人的话 , 让他自己给这个人, 就是说他可以点一下有谁谁谁 , 就给他发邮件之类的 。

再到后来的话 ,是有一个这个人的话是一个设计师 ,他是从设计的角度想问题的话 , 就是说人的交互的本质上是看这个照片的人头有谁嘛 ,他的头像是这个哥们的话 , 哎 , 你想把他指出来 , 所以说那我们就直接在 photo 上面进行一个标记的操作 , 这样的话更加的 intuitive 一点 , 类似于这样 。

后来因为这样的话就火起来了 。 开始的话他有一些比较初等的啊 , 就是让别人看之类的 ,但是 news feed 已经出来了嘛 ,其实他就是本质上他是 photo 上的 news feed,photo 上的推送信息嘛 。

后来就是因为就是在用户交互上面加了一个更加符合人的常规操作的一个东西 , 然后一下子火起来了 。

Host19:20

就这个功能其实我到现在为止啊 , 比如说我在国内的 , 比如说什么社交网上都没有看到 ,因为其实这东西还就是从这个写代码或者是计算的角度来讲 , 还是挺那个的 。

你要去算一下, 你要跟这个照片运行 , 就是跑一个这个叫什么人脸识别算法 , 对吧 ?

覃超19:36

没有没有 。 当时的话就是你点一下这照片的这个区域 。

Host19:42

对 ,他但是他会有一个算法是把那个照片里面假设有 5 个人, 对吧 ? 他会把 5 个人大致的这个头的位置 ,他会把那个框框起来 , 就是我不知道他那个算法是怎么弄的 。

覃超19:52

这是这两年的时候才加上去的 ,也就是前年, 在前年的时候加上去的一个 , 就是把他的脸识别出来加个框 。他是因为收购了 face.com 之后才会加了这个功能 , 当时他还做得更绝一点 , 刚开始上来的话就直接给他 ,他直接人脸识别出来之后给他推荐这个人是他的算法 , 机器学习的算法学出来是谁 , 你就确定一下就行了 , 基本上都是准的 。

但是后来的话大家觉得太恐怖了 , 就是那些用户又抱怨你把我的隐私搞了 , 对对对 。 所以的话后来就是就把这个功能一度下线了 , 就让用户自己去手输那个人的名字 ,他自己提供一个智能感应就行了 。

后来的话又把这个框取回来了 , 就是说这个脸的部位的话 , 我就把你框出来 , 你就不用自己框了 , 像这样 。

Host20:39

对对对 , 这个我觉得特别好用 。 就其实我其实到好像现在都没有在其他任何一个这种社交的或者是这个照片管理软件里面有这么好用的这么一个标记人脸的功能 。

覃超20:52

嗯嗯嗯 , 对对对 。 远到那个时代的话 , 中国的话可能就是人人网去把这个功能的话一直借鉴过来 ,而且还做得也不错 。在现在的话基本上是移动上面 , 移动上面的 LINE 和 IN 啊也做得很好 , 我觉得 。

他们的不仅是简单的 photo tag, 还做了一些标签 , 就是标签你的心情啊 , 标签你的当时的常用语啊 , 比如 don't don't don't 这种东西的时候 , 或者是标签一些品牌 , 这样的话对他们 monetization 可能也非常的有帮助吧 。

Host21:22

没错没错 。

覃超21:22

对 , 通过这个例子的话 , 我再啰嗦一句啊 , 就讲两点啊 , 我觉得比较好的 ,其实也就是之前 growth hack 的话 , 我自己也会经常会思考的问题 , 就是第一点的话 , 你要找到这种 magic point, 你的这个 aha point 给你的用户 , 让用户一下觉得哎 , 这个地方不一样 , 或者是这个地方有差异性 , 让用户觉得爽 。

Host21:41

对 。

覃超21:41

微信的话 , 张小龙去反复提到这一点 。 第二个的话就是说你的交互的话要 intuitive, 就是说用户不需要思考或者是学习很多东西 , 就算你写一个很简单的三步的教程 , 用户基本上都不想学 。

Host21:57

对 。

覃超21:57

要做的像 iPhone 一样的这种操作的 , 就是点进去 , 或者是你不想点了就回退或者 home 键这种 ,而不要做成像汽车的那个车载系统 。

Host22:08

哈哈哈 。

覃超22:09

即使是你开宝马奔驰 , 或者是开玛莎拉蒂 , 开法拉利 , 你就觉得我操 , 这个东西像上个时代的之类的 。

Host22:16

对 , 这么一个 。 就看等苹果的那个车出来会不会好一点 。

覃超22:21

是的是的 。 所以说之前我写过很多 growth hack, 大家会说 growth hack,但它本质的区别就是说你的产品有这么一个 magic point, 或者是满足了用户那一点核心需求 , 让用户觉得特别爽了 。

Host22:32

嗯哼 。

覃超22:33

对 , 我之前的话在知乎上面的话 ,也经常去看张小龙的回答 ,他也反复提一点 , 就是说做的功能的话要满足 , 就像人不用去思考 , 就符合他们最原始的一种思维 , 让他们不用去思考 。

这就是张小龙反复反复在做产品的时候强调的一点 。 我后来的话也经常去知乎上面看张小龙一些回答 ,因为张小龙本人的确在知乎上面回答了很少量的一些问题 ,但他反复 ,他回答的不多 ,但是他回答的 ,他答案里面反复就强调了一点 , 就是说做产品的时候要打到用户最 intuitive 的地方 , 就是不要让用户去思考 ,不要去想 , 就自然而然的那些行为和操

作做到你的产品里面去 , 你的产品才是最强的 ,而且你的产品要极简 。

Host23:20

嗯哼 。

覃超23:22

这样 。 后面的话就是 Chris, 回到 Chris Cox 的演讲之后的话 ,他还反复最后强调了一下我们的公司的一个 slogan, 或者是一个公司的口号 , 就是要 make the world more open and connected, 类似于这种 。

即使现在的话 , 我们要做的所有事情也是连接全世界 , 像这样 。 听过了 Chris Cox 的演讲之后啊 , 我就对这个公司 , 或者对美国的一个公司有了一个感觉切身实际的一个认识 , 就是说他们的领导讲话都是很有条理的 , 我觉得很有逻辑 , 几乎没有什么废话 ,也没有这种 stop words。他们讲话的时候没有什么很多 you know you know 或者 err err 这种 ,他们的措辞感觉都是精心准备的 , 没有

垃圾字 。 这可能是因为这个 onboard training 的时候 ,他们可能见过很多次了 。

Host24:12

对 。

覃超24:13

当时我就觉得哎 , 这个和国内的领导人比的话 , 就是我们要走的路还很长 。 同时的话 ,他们的文化的话 , 我就觉得对人或者是对我们的工程师是非常重视的 , 的确是给我们很大的空间 。

手机团队24:27

覃超24:27

就像我上一期讲的 , 我马上就有权限去看代码啊 , 同时的话马上就给我一个任务去修改 facebook.com 上面的一个 bug。

Host24:36

嗯哼 。

覃超24:37

同时的话 ,他们没有太多的权限控制 , 或者是没有那种就说哦 , 这个地方是不是要控制一下, 那个地方是不是要就是上级签个字啊 , 批准一下 ,不然的话会不会乱 。他没有这种 ,他就先放出去搞 , 先赡养了 , 就是大家一起啊 , 就是搞搞出问题的时候 , 哦 , 想这个机制是什么 。

不像国内的话 , 可能就是我们的文化长久以来教育的结果 , 就是大家会有时候会更加的保守啊 , 中庸一点 , 或者是甚至在有些地方碰碰及到一些敏感的地方 , 就先自我阉割一样 。

这样的话其实对创新是有害的 , 我觉得 。

Host25:12

对 。

覃超25:12

很多地方大家会预先说啊 , 这个地方的权限控制要是不是做好 。 之前我去过公司就是这样的 , 之前我到一个公司 , 一想这个层级 , 一想这个签字啊 , 审核做的越细越好 , 这些所有的东西都对 engineer 的话是一个绑手绑脚 , 或者对你整个一个公司的工程进度的发展 ,是无形的造成了很大很大的这种负担 , 维护的成本或者做事的成本都是这样 。

你就没法就是 move fast。

Host25:38

对 , 摩擦力大了嘛 。

覃超25:40

对 。 好 , 大概就这样的 。 然后后来的话 , 就是我如愿以偿的进入到了我的我喜欢的那个团队 ,也就是 Facebook Phone 这个团队 。

Host25:51

嗯哼 。

覃超25:52

Facebook Phone 这个团队加入的话 , 当时还是因为有另外一个中国人, 一个叫魏小亮的 ,也就是 David Wei。他现在的话是华人的 ,在 Facebook 最早成为 director 的一个人, 然后很厉害很厉害 。他当年是清华 996 级的吧 , 大概是这样 。

Host26:12

嗯哼 。

覃超26:13

也是搞计算机竞赛 。 后来的话还去当清华的 SMRCPC 的教练 , 类似于这样 。 后来的话去 Cartech, 就是加州理工 。

Host26:22

对 。

覃超26:22

我对加州理工的了解还是有一个台湾女生当时写了一篇文章 , 叫 《 从加州理工到高盛银行 》。

Host26:32

哈哈哈 。

覃超26:33

看得我特别的热血沸腾啊 。 就是可能后来的话 ,有些人看我的知乎专栏 , 看我写的文章也觉得热血沸腾 ,但是如果有一篇文章 , 我要推荐给大家说 , 当年让我看的热血沸腾的话 , 就是 《 从加州理工到高盛银行 》。

Host26:49

满满的鸡汤 。

覃超26:50

哈哈哈 。 对 ,他说的很干货 ,其实 。他讲了自己怎么奋斗的 , 怎么出国 , 怎么看各样东西 , 的确是 。

我觉得每个本科生的话 , 或者是大学生的话 , 你们都应该去看一下 。

Host27:04

嗯哼 。

覃超27:05

再接下来的话 , 就是说去了这个 bootcamp 的话 , 就是和魏小亮 , 魏小亮就变成我的 mentor 了 , 就是 David Wei, 然后就给了我很多很多的各种各样的帮助啊 , 就是从工作方面也好 , 后面的话我再细讲 ,以及这个 Facebook Phone 这个组到底是干嘛的 。

当年可是大红大紫 , 或者是高度机密的一个组 。 当时我们的地方都不在 , 都没有和 Facebook 所有人都在一个楼里面 , 都没有 。

我们自己有一个独特 , 就是在外面的单独的楼 。

Host27:33

就不在那个公司的办公楼群里面嘛 。

覃超27:36

是的 。

Host27:36

OK。

覃超27:37

就为什么这么考虑 ,是为了保密还是怎么样 ? 是为了保密 , 对 。

Host27:40

OK。

覃超27:40

当时的话非常敏感 ,是因为做这个东西的话 , 很可能影响和 APP 的关系 。

Host27:45

啊 , 对 , 这个 。

覃超27:47

因为 Zach 和 Steve Jobs 私交甚好 , 经常一起吃晚饭 , 对吧 ? 你要做个做个 iPhone 出来的话 ,Steve Jobs 可能就跟你绝交了 。Steve Jobs 脾气也是那种很暴躁很偏执的嘛 。

哎 ,Zach 就以后不要在这个硅谷圈混了 。

Host28:02

哈哈 。 哎 , 这个 Facebook Phone 诞生的背景是什么 ? 可以介绍一下吗 ?

覃超28:06

Facebook Phone 诞生的背景就是说那个时候是 2010 年 。

Host28:11

嗯哼 。

覃超28:12

大家都已经出来第三年上面了 。 对 , 第三年 。 而且 SDK 和这个生态系统已经在繁荣 ,在逐渐繁荣的一个过程中 。

Host28:20

对 。

覃超28:21

所以在这个时候 , 大家已经很明显的看到 , 就是移动的机会 。

Host28:25

嗯哼 。

覃超28:26

移动互联网的机会 。 然后 Google 在布局了 ,Mic 呃 , 那个 Microsoft 也在做了 , 对吧 ? 然后 Facebook 自己也要整一套出来 , 这是他们的想法 。

但他们不想整一个 , 就是为了做电话而做电话的 。他们想做一个差异化的 , 就是说是 social phone, 就是说这个社交的属性非常非常重 ,而且社交的属性是直接来改造安卓上面来做的 。

另外的话 , 整个 Facebook 还算一个 web company 嘛 , 就是所有东西都基于网页的 , 就是我们是一个在网页上做的特别好的一个公司 。

所以他想把这个东西是整个电话的话 , 整整个基于网页 ,也就是基于当年大红大紫的 HTML5 的技术来做 。

Host29:08

嗯哼 。

覃超29:10

后来的话 , 就是这个项目 steps time ambitious 了 , 然后呃 , 动用了太大的资源以及太多的人, 然后难度的话比我们想象的要大不少 , 最后就是没有成功 。

这个项目的话就不停的转型 ,不停转型 。 后来就做了一个很简单的 , 等下我再继续讲这个啊 。 如果按照时间 , 我想按照时间来讲的话 , 就是我进了 Facebook 大概就两个月不到一点的时间的话 , 先经历了三个我都觉得特别有意思的事情 。

第一件事情是说 , 当时是年底就有一个我们的公司的年会 。 首先的话 , 就经经历了我们公司的一个年会 。

年会的话 , 就是在就是每一年和国内公司不太一样 , 国内公司可能是春节前就开始开一个公司年会吧 。

Host29:58

对 。

覃超29:58

对吧 ?

Host29:58

对 。

覃超29:59

在美国的话 , 大概是在 12 月的第一个星期或者第二个星期的时候 ,他们主要是过圣诞 。

Host30:05

对 。

覃超30:05

开一个年会的话 , 就是所有的公司员工都在这个会议室里面 , 然后开始就

约定一个时时间开始的话 , 当时我记得清清楚楚 , 时间快到的时候 , 就是 Zuckerberg 一跳 , 跳到一个板子上面去 。

当时还比较简陋 ,在一个类似于仓库一样的环境 ,他就搭了一个台子 , 下面放了好多好多的好多的椅子 , 全部公司的人坐在里 , 大概 1,000 多人。

Host30:30

嗯 。

覃超30:30

我离开公司的时候 , 公司有 1 万人。

Host30:33

OK。

覃超30:34

当时就 1,000 多人。Zuckerberg 就直接爬上去 , 爬上去之后拿麦克风 ,他也没说啊 , 大家好啊 , 各位领导啊 , 或者是各位下面的人啊 , 怎么怎么 , 我们的会开始了 , 大家鼓掌 , 没有这个 。他就大叫一声 , 别说话 , 开始了 。

哈哈哈 。 那就开始讲啊 , 这是我们的月会的 , 我们的年会主要内容是什么 。他就先分析了整个公司的战略 ,以及公司现在发展怎么样 , 然后再说了我们上一年的时候制定的这个公司必须完成的目标是什么 , 我们现在达成的情况是怎么样 , 就一个一个一个过当年设定的任务 , 现在是否完成 ,以及现在我们的状况是什么 , 统计是怎样 。

就是这么一个过程 , 就是首先先过了每个每个部门完成的标准 。

Host31:15

嗯哼 。

覃超31:15

当时完成的还不错 , 当时我其实完成的很好 , 然后整个的奖金的系数是 1.25 吧 , 我就记得这个 。他公司会根据整个公司的绩效给你一个评分 , 当时的话是整个公司是 1.25。

然后再接下来的话 ,他就会展望接下来一年要干嘛 , 然后公司的核心是什么 。 他当时记得清清楚楚 , 举了几个核心 。

第一个在 Mobile 上面 , 我们要继续发力 ,因为以后的话就是一个 Mobile 的天下, 我们公司必须变成一个 Mobile company。 然后 Facebook Phone 的话 , 这个项目会非常的重要 。

当时有个内部的代号的 , 叫 Buffy, 叫 Buffy。

Host31:54

Buffy。

覃超31:54

B-U-F-F-Y。

Host31:56

OK。

覃超31:57

小吸血鬼 。

Buffy计划31:57

Host31:58

哈哈哈 。

覃超31:58

B-U-F-F-Y。

Host32:00

为什么起这个名字 ?

覃超32:02

啊 ,他们 codename 就是这样 , 各种各样的神啊 , 各种各样有趣的东西啊 。 啊 , 最开始这个名字的缘由的话 ,是因为叫 Slayer,social layer。

本来是叫是在电话的中间加一层 , 加一层社交的层 , 就叫 social layer。

Host32:18

对 。

覃超32:18

Social layer 合在一起就是 Slayer, 就是 Slayer。Slayer 就是吸血鬼的意思啊 。Slayer 这个单词当时是给和微软讨论的时候 ,Steve Barma, 呃 ,Steve 首先是扎扎克伯格和比尔 · 盖茨是私交特别好的 , 然后他们整个讨论的时候 , 就是比尔 · 盖茨啊 ,Steve Barma 都在 ,因为他们想合作这个电话的时候 , 就觉得 Steve Barma 说这个 Slayer 这个词让人觉得就是吸血鬼日记里面就是很恐怖的那种吸血鬼 , 就

说不太可爱 , 我们就换一个吧 。

Host32:46

不可爱 。

覃超32:46

后来就想想想 , 想到一个小吸血鬼蝙蝠 , 就是很可爱的 , 就是一个电视里面一个角色 , 叫 Buffy 的 B-U-F-F-Y。

Host32:53

OK。

覃超32:53

然后就叫了 Buffy 这个词 。

Host32:55

明白 。

覃超32:56

对 , 这个是比较考验功底的啊 。 后后来还有一些 codename, 就比如说 Spotlight, 就是那个呃 , 星际穿穿穿越里面 , 星际航行里面那个宇宙飞船的名字 , 类似于这种 。

然后我回到中国之后, 我基本上很少用英文啊 , 就是说一一整个句子的话 , 尽量不用英文 , 就不用英文那些 。

但是有时候会写的时候 , 一些专业用语还会带一些英文上来的 , 就经常在知乎上面 , 别人会说我啊 , 喜欢吊书带啊 , 喜欢中文夹杂英文 。

Host33:22

哈哈哈 。

覃超33:22

我还是觉得挺憋屈的 。 然后但是我觉得特别让人觉得悲剧的是 , 或者是让人觉得可悲的地方是 , 经常我有些朋友在外企工作的 , 就是在中国这种呃 , 英语又不咋地的地方工作的 , 动不动就是把自己的微信上面的名字都不敢用自己的真名 ,不敢不用中文名 ,而是优先用英文名。

让我就觉得特别的可悲嘛 ,因为大家都是中国人, 还是应该都用自己的语言 , 类似于这种 。 然后真正和他们讲 Slayer 是不认识 , 讲 Buffy 的时候也不知道是干嘛的 , 然后就是自己的英文名叫飞起来了 。

我觉得这种现象的话 , 我觉得在国内里面 , 我想把大家再翻过来 。

Host33:56

嗯 。

覃超33:56

我还是更加觉得阿里巴巴更牛逼一点 , 就是用花名 , 用自己啊 ,有有自己文化象征的 。 然后我我我英文名我自己都不用了 , 我当然肯定是有英文名了 , 当然在 Facebook 的时候 , 我现在就就叫覃超 , 或者叫覃超小魔王之类的 。

这种东西的话 , 我再多说一句 , 可能也就是因为我在那边有工作过啊 , 之前也呃留学啊 , 所以我有这样的特权啊 , 可以就直接叫我的中文名就算了 。

Host34:25

嗯 。

覃超34:26

如果真正你在这个环境下一直待 ,在外企的环境也好 ,在投资的环境也好 , 你还是想不由不由自主的 , 就是感觉把自己的英文名叫起来 , 那种感觉就好像就比如说我在这个投资 , 现在在峰瑞资本的话 ,有时候见很多人来打招呼什么的时候 , 我叫 Ryan。

Host34:42

嗯 。

覃超34:42

我叫

叫什么什么名字 , 我都说啊 , 你们好 , 我叫覃超之类的 。

Host34:48

哈哈哈 。

覃超34:48

我当时就觉得 , 哎 , 和他们觉得有点格格不入的一种感觉 。 但是但是真正一介绍背景起来的话 ,他们都不咋地嘛 , 类似于这种 。

Host34:58

对 。

覃超34:59

然后他的名字就叫 Buffy, 就是由于这个过过来的 。 那他当时就整个公司的重点的话 , 就是会在移动上面 , 比如说把我们的 iOS APP 以及安卓 APP 做得更好 , 另外的话把我们的 social 的 phone 赶快都推出来 。

Host35:15

嗯 。

覃超35:15

另外当时还有一个非常非常重要的点 , 就是 Go China。 我记得清清楚楚 ,不是 Go to China,也不是 Go into China market,Chinese market,不是 , 它就叫 Go China。

Host35:27

嗯哼 。

覃超35:27

中间连那个助词 to 都没有的 。 它的确是这样的 。

Host35:31

OK。

覃超35:32

这表示他一种决心吧 , 然后以及讲的那个 , 就是好像是类似于 Go fuck it, 它不是 Go to fuck it, 对吧 ?

Host35:40

哈哈哈 。

覃超35:41

Go fuck it, 对吧 ?Go China。 同时的话 , 就就像你们看过苹果的一些宣传语的话 , 会讲 Think different, 对吧 ?

Host35:48

对 。

覃超35:48

而不是说 Think differently。 如果是中文的话 ,在中国学英文的话 , 你会说应该是不是应该讲 Think differently 了 。其实按照语法的话 , 的确是这样的 。

但是 Steve Jobs 在自己的自传里面也解释过一句 , 都是为什么他用 Think different,而不是用 Think differently。 就细节的话 , 你可以看我知乎上面有个回答 , 就是关于这个的 ,Steve Jobs 的传记上面都写的有的 。

Host36:11

嗯哼 。

覃超36:12

好 , 我们就废话少说 , 再继续啊 。他们就当时当时说了一个 Go China, 然后在正是因为这件事上面 , 扎克伯格就是说我以后的话每两周要学习一次中文 , 就是叫所有的中国同事来给他上课 。

就是每两周的时候有一个小时的会议 , 这个小时的会议的话 , 就是一群中国同事和扎克伯格一起 , 就是用中文来探讨一些问题 。

Host36:42

哈哈哈 。

覃超36:44

也就是这是 2010 年底啊 , 就是因为开这个时候 ,他开始慢慢的打下了中文的基础 ,以至于今年的话 ,2015 年 。

Host36:54

对 ,他在 。

覃超36:54

三个月前还是两个月前的时候 , 对 ,他来清华的话 , 就用中文开始来讲话了 , 对吧 ?

Host36:59

这算 。

覃超37:00

但是如果你认真听他的 , 对对对 , 你认真听他的中文的话 , 你会觉得啊 ,他讲中文的话完全就变了一个人。

他用英文讲的时候 , 你觉得他是一个很成熟很成熟的 30 岁的人 ,而且就是说他表现出来的成熟 ,以及他了解的东西远远超过他这个年龄 。

但是他一换到中文的英英中文的话 ,他就一下子变成了一个 10 岁左右的小孩讲话的感觉 , 就是萌幼稚 , 同理可得哦 。

Host37:25

嗯 。

覃超37:26

一个特别牛逼在想在中国干大事的人, 一下子跑到英文的环境里面去 , 就是现在在硅谷 ,在美国打拼的那些华人 ,他用中文一讲讲话的时候 ,在外国人看来 , 就感觉这个人像一个 12 岁左右的小孩子一样 , 你就不由自主的变得萌 , 或者是变得让大家觉得哦 , 你是一个感觉很多地方不太像纸牌屋里面能够玩弄起一些政治 , 或者是没有在共同语言 , 或者是

没有大家在一个 thinking level 的一个情况 。在这种情况的话 , 你就不由自主的会被他们边缘化 , 或者是他们无法把你做当做一个战略合作伙伴的关系 ,因为你是小孩 ,而他们是觉得自己是大人。

Host38:07

这个 。

覃超38:08

这样的话 , 就变成一种令人觉得毛骨悚然的一种壁垒 。

Host38:12

这语言障碍吗 ?

覃超38:13

像这样 , 对 。

Host38:15

你就觉得你不够 sophisticated。

覃超38:17

是的 ,而且也害怕这个东西搞不搞得定啊 , 什么先 。

Host38:21

哈哈哈 。

覃超38:21

他们也类似于要有一些接地气的地方嘛 。

Host38:24

对 。

覃超38:24

就类似于这种送礼啊 , 权益的交换啊 , 呃 , 摸清对方想要的是什么之类的东西啊 。 然后在这个时候 ,他就不知道你是不是能够加入他们这个团队的人, 也也不知道你玩不玩得会这一套之类的 。

Host38:41

对 。

覃超38:41

虽然你你你心里面清楚 , 卧槽 , 你你你你这些政治或者玩这些玩意 ,在中国我他小优见小优见大乌了 ,但是他们不会这么觉得 。

Host38:51

哈哈哈 。

覃超38:52

啊 , 那个扯远了哈 , 说回那个那个 Facebook 这个 phone 哈 , 就在这个大背景下 ,其实就就各家都在搞了嘛 , 就 iPhone 走在前面 , 然后安卓也开始在往一个当时还是属于追赶的阶段嘛 , 应该是 。

Host39:06

是的 。

覃超39:07

然后微软的话 , 它的 Windows Phone 应该还没有起来 , 那个还是叫那个叫什么来的 ,Windows Phone 之前的那个系统叫 。

Host39:18

Windows Mobile。

覃超39:19

对 ,Windows Mobile, 对 , 还还是 Windows Mobile 的时代 , 对吧 ?

Host39:23

它当时的 Windows Phone 已经起来了 ,其实 。

覃超39:25

已经有了 。

Host39:26

那个 Metro Phone 的 , 呃 , 那个叫 Metro 风格的那个 UI。

覃超39:30

对对对 。

Host39:31

呃 , 已经发布了 ,而且也开始有有卖的了 , 对 。

覃超39:34

OK, 那但那这个情况下,Facebook 想做这个 phone, 它是说要选好一个 , 就它不想做一个传统的 , 或者说跟其他三家去竞争的这么一个底层的平台 , 它说中间层级的话 , 这个怎么做呢 ?

WebKit移植39:47

覃超39:47

具体 。

Host39:49

首先要做的话 , 就是首先和硬件厂商其中一间硬件厂商合作 。

覃超39:54

嗯哼 。

Host39:54

就来生产电话 。 当时它是和 HTC 来做的 。

覃超39:57

就也是要做硬件的 。

Host39:59

不是做硬件 , 就是设计一个硬件 , 然后它去做 。 就好像是现在的 , 比如 360 手机 。

覃超40:05

嗯哼 。

Host40:05

你不能完全说它设计了硬件 。

覃超40:08

就是怎么说 , 就是和硬件厂商一起做一个方案 , 然后你提出你的需求这些 , 它帮你按需生产 。

Host40:15

对 ,是的 。

覃超40:16

OK。

Host40:16

而且在硬件上面的就是大的设计没有 , 就是根本没有像小米或者是像垂直手机里那样 ,在工业设计上面吹毛求疵很多地方 。

覃超40:29

就还是追求的是一个普通的大众配置 。

Host40:33

对对对 。

覃超40:33

OK。

Host40:34

可能是用比较好一点的配置啊 , 或者是比较先进一点的配置 , 已经比如说我们选当当年的 Tegra 3。

覃超40:40

嗯哼 。

Host40:41

Tegra 3 的芯片 Nvidia,而而没有选 Qualcomm 的 。

覃超40:44

OK。

Host40:44

芯片类似于这种 。 但是我们没有做硬件方面的 , 就是很高度化的顶级 ,因为我本来也没有什么硬件团队嘛 。

覃超40:51

对对对 。

Host40:52

那软件硬件方面就是和这些厂商合作 , 类似于就做一个 360 手机一样的 。

覃超40:57

OK, 那软件上面呢 ?

Host40:58

软件上面的话就有很多人啊 , 当时这个 team 的话非常非常大 , 发展最后非常大 。 我刚进去的时候大概就 10 个人不到 。

覃超41:06

嗯哼 。

Host41:07

后面那个时候已经有将近 200 个人的团队 。

覃超41:09

你刚进去的时候 ,他们已经选型定好了 , 比如说底层要用什么系统 , 然后中间要怎么弄吗 ?

Host41:15

没有完全 ,但是在制作的过程中 。

覃超41:18

OK, 所以这这段的经历你可以介绍一下是怎么 , 就还这个还是挺挺好奇的一件事 。

Host41:23

对 , 当年的那个老大 , 这个组的一个老大叫 Matthew Papakipos, 就是从 Google 挖过来的 。他在 Google 的话是负责 Chrome OS 的 。

覃超41:31

啊 。

Host41:31

所以就是类似于一个

相似的一个行业吧 ,因为他觉得他因为我们觉得他在这方面有经验 , 就把他叫过来了 。

覃超41:41

嗯 。

Host41:41

于是他就负责做我们的这个 Facebook Phone。

覃超41:45

也是他推动的 , 采用像这个 HTML5, 还有那些 Web 的一些技术栈去做上层应用吗 ?

Host41:51

呃 ,并不是 。 我现在给大家解再详细的说啊 。

覃超41:56

OK。

Host41:56

这个是 Lee 的这个项目的 ,但最上面的话 , 整个这个项目被推动起来的话 ,其实是 Bret Taylor 在后面做的 , 就是 Bret Taylor 把这个 Matthew Papakipos 招进来的 。

覃超42:07

啊 。

Host42:08

是 Bret Taylor 是其实是这个项目的最最终的主导者 。

覃超42:12

啊 , 这个我们上期节目里面有提到啊 ,Bret Taylor 以前是那个 Frontfeed 的这个 CEO,CTO 还是 CEO?

Host42:21

呃 , 创始人吧 。

覃超42:22

创始人, 对 。 然后 Frontfeed 被 Facebook 收购了之后 ,他就去 Facebook 做了 Facebook 的 CTO。

Host42:29

是的 。

覃超42:30

对 ,他也写过那个 Tornado。

Host42:32

对 ,Tornado 代表作品 Tornado。

覃超42:35

哈哈哈 。

Host42:36

对对对 , 知乎的后台嘛 。

覃超42:37

所所以这个 Facebook Phone 这个项目背后是他在推动的 。

Host42:40

是 。

覃超42:41

OK。

Host42:41

是他最后推动过来的 ,因为而而他是 HTML5 的坚决的拥护者 。

覃超42:47

嗯哼 。

Host42:48

于是他就想这个东西是基于网页的 , 基于 HTML5 的 。

覃超42:54

嗯哼 。

Host42:55

然后他把 Matthew Papakipos 从 Google 挖过来了 。Matthew Papakipos 的话之前是做硬件相关的 , 所以他就把这个硬件说我们要自己来做 , 就变成说硬件中间的 OS 之间的这个 browser,以及它前面的上面这个我们的 first party app, 就是系统自带这些 app,以及整个生态系统 SDK 的话 , 都是由我们来做 , 整个就会变得很重了 。

覃超43:20

OK。

Host43:21

但是因为重的话 , 就觉得这个项目巨牛逼 , 或者是觉得大 , 然后能做成的话 , 你肯定可以 , 就是说相当于自己起一笔江山一样 。

覃超43:30

嗯哼 。

Host43:31

像这个过程 , 然后就开始做 。 做的时候就刚才说了 , 下面的底层的话就是用和 HTC 来合作 , 中间的话就是开始来改安卓的一个版本 。

我们当时是从 Gingerbread 开始来改的 ,Gingerbread 的话就是姜饼嘛 , 那个版本 。

覃超43:48

嗯 。

Host43:49

在上面的话 , 把他们的把安卓的那些原生的这些 app 全部都踢掉了 , 就是我们不需要用安卓自带这些原生的 app 了 , 就是把这些很多都是直接从系统里面踢掉 。

覃超44:01

OK。

Host44:01

另外的话 , 当时的话那个 Android 的 browser 的话 , 它不是用 Chrome 的 ,也没有用 WebKit 的这个内核 , 所以我们把整个很大很大的 WebKit 移植到了 Android。

覃超44:16

那个时候的 Chrome 那个安卓浏览器内核是什么 ?

Host44:19

就是自己有个叫 Android 的 browser。

覃超44:22

哈 。

Host44:22

就很简单的 。

覃超44:23

就比较弱是吧 ?

Host44:25

单线程 , 对 , 单进程 , 单线程 , 只要有一个挂的话 , 这个这个 Chrome 就挂 , 呃 , 这个这个 browser 就挂了 。

覃超44:32

OK, 所以你们还自己把那个 WebKit 给移植进去了 ?

Host44:36

对 , 把 WebKit 来移植进去 。 但是 WebKit 本质上本身是自己不支持多进程的 。

覃超44:42

嗯哼 。

Host44:43

是 Chrome 自己加了一个 ,在外面包了一个多进程的 。

覃超44:47

对 。

Host44:47

导致你一个 tab 挂的话 , 你整个浏览器是不崩的 , 对吧 ? 你只要把那一个 tabkill 掉就行了 。

覃超44:53

对 。

Host44:54

好 , 当时移动下面完全没有这个条件啊 , 当时是 2010 年, 你在 iPhone 下面也没有啊 , 你在 iPhone 下面用它的 Mobile Safari 的话 ,也是只要挂的话 , 整个 Safari 这个 app 也挂了 。

覃超45:06

对 , 我我都不确定现在的那个 iOS9 里面的是不是还是这样 。

Host45:11

呃 , 我也不太确定 ,但是 。

覃超45:14

因为我记得在那个桌面版的 Mac 上面的那个 , 就是 Desktop Safari 也是非常到他到 9 吧 , 才开始支持这个多进程的模型 。

Host45:22

嗯 , 当时对 ,是的 , 即使在安卓上面的那个 Chrome 的话 ,也是在三年前还是四年前出来的 。

覃超45:31

OK。

Host45:32

但是对 , 对对对 , 它这个有问 , 然后这就带来一个问题 , 就是说你的这个浏览器效率就会非常重要的 , 这样的话 , 就是浏览器本身的话 ,也必须是这个 phone 很重要一部分 ,因为我们是非常非常重度的依赖于 HTML5。

覃超45:47

对 。

Host45:48

而且 HTML5 的话 , 从中间会把很多的样子操作会推到前端来做 , 就是推到 JavaScript 来做 。

覃超45:54

对 。

Host45:55

所以的话 , 你的 JavaScript engine 要非常非常的厉害 。

覃超45:58

对 。

Host45:59

那个时候的话 , 就根本我们就自己从

Google Chrome 团队挖了几个 V8 的那个 。

三进程架构46:04

覃超46:08

就是那个 Node 上 Node 用那个 V8 那个 JavaScript 引擎嘛 。

Host46:12

对 ,是的 ,V8 JavaScript 的制作者 ,其中有个中国人叫钱峰的 , 对 , 就把他挖过来了 。

覃超46:18

嗯哼 。

Host46:18

他之前就一直在 Google 来做那个 V8 引擎 , 然后整个 V8 引擎也就是他们一帮人一起做的 , 就是那个引擎的话效效率非常高嘛 。

覃超46:27

对 。

Host46:27

后来的话 ,也就是因为这个引擎的话 ,Node JS 能够得以发展 , 就是他把这个 V8 放在 server 端了 。

覃超46:32

没错 。

Host46:34

好 , 当时就把整个 WebKit 移植到整个 browser 里面去啊 , 就进行各种样子优化修改啊 ,在里面加各种各样的功能啊 。

覃超46:43

嗯哼 。

Host46:44

当时的话 , 我们的人没有那么强 ,也没有那么多的话 , 就没法做一个多进程的那个 web browser 进来 。

覃超46:52

嗯哼 。

Host46:52

Mobile browser, 当时就突发奇想 , 做了一个三进程的 browser。

覃超46:59

OK。

Host46:59

因为你就可以自己那种 hard code 写进程 , 就是说裸写进程 , 裸裸起这种 WebKit 的进程 ,但它不会用用程序来管理和分开的话 , 它觉得很麻烦 , 所以它就改了很多全局变量的前缀 。

但是你改环境变成前缀的话 ,其实是很大的一个工作量嘛 , 所以他们就把很多前缀加了一个 , 比如说 a 啊 , 反正加了一个 xx 什么什么的 。

但是这个呢 , 问题是话 , 你在编译的过程中, 就相当于是编译器的创建进程了 , 或者是在编译器的时候来改代码了 , 就并不能后面的话动态来做这些事情了 , 对吧 ?

覃超47:38

嗯 。

Host47:39

那就说行 , 没办法 , 那我们就超快猛先搞呗 , 然后就搞出了三进程的一个浏览器 , 就是就是只能三进程 。

覃超47:46

就是固定的三个进程 。

Host47:48

对 , 固定的三个进程 , 就是因为把代码 , 就是把代码其实拷贝了三份 , 然后把全局变量前面加了一个前缀的名字 , 然后这样的话让全局变量不再冲突 。

覃超47:59

哎 ,但是这样有什么好处呢 ?

Host48:01

WebKit 啊 , 开了三进程之后 ,其中第一个进程的话 , 就是来跑我们 Facebook 自己在这个电话里面做的一些应用 , 比如说打电话 , 比如说呃发消息啊 , 比如说看 photos 啊 , 看天气啊 , 这些应用的话就在第一个进程跑 。

也就是说因为是我们自己写的话 , 我们基本上会把它写得很稳定 , 就这个进程基本上不会挂 。

覃超48:26

OK。

Host48:27

然后第二个进程就是给我们的 third party apps 来跑 , 就是其他的开发工程师可能自己开发了一些东西 , 用我们的 SDK 啊 ,他们的进程 ,他们的 app 的话就跑在第二个进程上面 , 这样的话他们写出什么 bug,因为他们的他们的 web app 的话 , 我们的我们是不能控制质量的 。

覃超48:43

对 。

Host48:43

他们有什么问题的话 , 就只挂自己的第二个进程 。

覃超48:46

就不会影响第一方的应用 。

Host48:48

是的 , 然后再开第三个进程 , 就是让用户来上网的 , 用户不是要经常逛一些网站吗 ? 或者是这些网站可能有问题的话 。

覃超48:56

啊 , 对 , 我突然意识到 , 就是你之前说引入 WebKit,其实我还没大没没太理解它的重要性 ,因为如果其实所有第一方的应用也是这个呃 web 呃 HTML5 的话 , 你们也需要一个 WebKit 引擎来跑那些第一方的应用 , 对吧 ?

Host49:11

是的 。

覃超49:11

所以所以这个底层的这个稳定性就非常重要 。 哎 , 那为什么就是当时是因为没有 。

Host49:18

对 , 我打我打断一下啊 。

覃超49:19

嗯 。

Host49:19

你就可以想成这个电话从很高的层面来看 。

覃超49:22

就是个大的 。

Host49:23

变成了对对对 , 下面是硬件 , 对吧 ? 中间是 OS, 就是 Android system。

覃超49:29

对 。

Host49:29

在上面的话 , 架了一个我们自己修改过的 WebKit 的这个 browser。

覃超49:33

对对对 。

Host49:34

和 WebKit 这个 browser 并行的 , 就已经没有原生的应用了 。

覃超49:39

就所有都被干掉了 。

Host49:41

对 , 就变成一个大的 web browser。

覃超49:43

那真的真的和那个 Chrome OS 的思路一模一样 。

Host49:46

是 ,是的 。 所以它借鉴这个嘛 , 就是很大的一个 WebKit。

覃超49:49

然后然后刚才你说 。

Host49:50

WebKit 上面的话 , 再架了所有的 HTML5 的 。

覃超49:54

对 , 然后然后刚才你说是因为没有这个足够的时间和开发人力去做真正意义上的多进程 , 就是比如说每个第一方应用是在一个独立的这个 WebKit 进程里面跑 ,而是说所有的第一方应用在同一个这个 WebKit 进程里面跑 , 然后所有的第三方应用在另外一个 WebKit 进程里面跑 , 然后最后那些网页又在另外一个 WebKit 进程里面跑 ,是这样吗 ?

Host50:18

是的 。

覃超50:19

哇 , 这个就是简单粗暴 。

Host50:21

是的 , 简单粗暴 , 就是三线三进程系统 。

覃超50:24

OK。

Host50:24

是这样的 。 当时做好了之后, 就是性能一直没有得到改变 , 性能问题一直没有得到改善 。

覃超50:32

这毕竟是 20, 那是 2010 年是吧 ?

Host50:35

2010 年,2011 年的时候 。

覃超50:36

对 , 比较就硬件还不是太好 。 那个时候应该是 iPhone 几来的 ?3 还是 。

Host50:42

iPhone 4 已经出来了 。

覃超50:43

4 了 ,OK。

Host50:43

对 。

覃超50:44

已经有 Retina 的这个屏幕了嘛 。

Host50:46

Retina, 对 。 当时我们还有一个我记得非常非常清楚的 , 就是说当时 Backbone 大家已经在开始用了 ,在硅谷的时候 。

覃超50:55

嗯哼 。

Host50:55

然后我们自己写了一套类似于 Backbone 的叫 Bot JS 的那个前端的框架 , 只是没有开源出去罢了 , 后来 。

覃超51:03

啊 , 这个是用来写第一方应用的一个框架吗 ?

Host51:05

对对对 , 我们所有的第一方应用都是在前端进行渲染 ,也是也就是在基于浏览器的一个 web app,也就是相当于是一个前端 MVC 也好啊 , 或者你也可以说前端 MMV 还是叫 MM。

覃超51:21

MVC 吧 。

Host51:22

对 , 类似于这种 。 对 , 当年在五年前的话 , 我们就是在这样做的 。 我们的那个框架的话就是基于 Backbone,但是里面就是对为移动优化了特别多 。

覃超51:34

嗯哼 。

Host51:34

整个框架也是比较轻的 , 你可以很方便的就是写你的 model 啊 , 写你的那个 view 啊 ,controller 之类的 , 然后用 JavaScript 的话就做了一个相当于做了一个移动的 app, 然后后端的话就是通过那个

那个 HTTP request 来进行通信的 , 然后用用用那个 GraphQL,也其实本质上就是用 JSON, 用 JSON。

覃超51:59

那个时候已经有 GraphQL 了 。

Host52:00

对 , 那时候已经有 GraphQL。

覃超52:02

好早 ,因为 GraphQL 最近才开放出来给外面的人用哈 。

Host52:06

对 , 那个时候已经有了 。 最最近开放的话 ,是因为他自己做了一套 GraphQL 那个库 , 支持移动上面的 , 然后吹得比较火了 。

覃超52:16

对 。

Host52:16

最早的话就是做 Facebook platform 的话 ,GraphQL 已经在在这个网页端已经很火了 , 就是当年 Zinga 的所有的游戏基本上就基于 GraphQL。

覃超52:28

对 , 那但那个时候只对你这个 Facebook 和他的那个合作 。

Host52:32

认证的 developer。

覃超52:34

对 , 才有 。

Host52:34

然后主要是网页上的 。

覃超52:36

嗯哼 。

Host52:36

也就是说是 desktop 的 ,是的 。

覃超52:39

OK。

Host52:41

然后就类似于做各种各样的 web app 之类 ,但是当时就是很大的一个问题 , 就是性能上的问题 。 性能上性能上的问题的话 , 最主要来反映的话 , 就是首先浏览器自己它的性能并不好 ,在 Mobile 上面的话 。

覃超52:55

嗯哼 。 就这个到现在到现在也没有解决吗 ? 其实 。

Host53:00

其实是的 , 当时我们会觉得越来越快 , 性能不是什么问题 ,但是现在看来的那么慢 。 自己一厢情愿 。

对对对 , 然后第二个问题的话 , 就是说你其实本质上是在你的 OS 上面再多加了一层这个 browser, 然后再到你的 app 的话 。

覃超53:16

对 。

Host53:17

其实你越加越多加层级的话 。

覃超53:20

对性能上 。

Host53:21

你带来的好处可能是兼容性好 , 对吧 ? 比如说跨平台之类的 ,但是你的性能损失就越多 。

覃超53:26

嗯哼 。

Host53:27

在 Mobile 这么一个平台的话是不可能的 ,在 Mobile 的话就是越越底层越好 , 你你恨不得直接上 C 和 C++, 直接调 OpenJS 来来来画图 。

覃超53:36

对 。

Host53:37

感觉是这样 。 还有第三层的话 ,JavaScript engine 的话 ,其实那时候根本没有发展得特别彻底 , 比如说那个 V8 的话 , 都是我们自己架进来的 。

覃超53:44

嗯哼 。

Host53:45

再比如说的话 , 那个 Nitro 那个引擎 , 就是 Safari 里面那个 Nitro 这个引擎 , 你在你你用你写程序的话 , 用 UI web view 的话 , 根本就没法 。

覃超53:55

没有 , 对 。

Host53:56

就没有 。

覃超53:56

它只有在自己的那个 Safari 那个浏览器里面才会有 。

Host54:00

对 ,是的 。 然后还有的话 , 就是这个 JavaScript 的 JavaScript engine, 一个最大毛病就是说它是单进程单线程的 。

覃超54:08

嗯哼 。

Host54:08

它单线程跑的 , 所以的话 , 经常你在用 JavaScript 做一些 , 比如说 fetch data, 就是取数据的操作的时候 , 经常把那个 JavaScript engine 卡住 , 把把它的那个主线程卡住 , 或者是 JavaJavaScript 在做那个 garbage connection 的时候 , 会占用主线程 。

覃超54:26

对 。

Host54:26

就一下子卡住之后 。

覃超54:28

导致暂停吗 ?

Host54:29

直接导致你的用户的输入没有响应 , 就是你点这个屏幕的话 , 这个屏幕没响应 。

覃超54:35

对 。

Host54:36

这样的话就是最大的一个问题了 ,其实 。

覃超54:38

对 。 哎 , 后来当时有那个 WebWorker 这个 。

Host54:42

有 WebWorker,有 WebWorker, 这个这是一个很好的问题 。WebWorker WebWorker 所做的一个事情啊 , 就是说让 JavaScript 可以支持多线程 。

覃超54:50

对 。

Host54:51

你可以重新开一个线程来专门做一个 worker 的操作 。

覃超54:54

对 ,是这样的 。 但 UI 这块好像还是还是在同一个那个 , 跟起码跟 JavaScript 执行的那个解析器是在同一个进程里面 。

Host55:02

是的 ,但它的缺点是你只能做一些非 DOM 相关的 , 你只要你你如果要操作 DOM 的话 , 你就必须出了回来了 。

覃超55:11

对对对 。

Host55:12

所以说你你要操作操作 DOM 的操作的话 , 必须把它重新再 call back 回来 。

覃超55:17

对 , 这也是为什么后来哎 , 我不知道刚才你说那个 bot 后来的这个 React 有没有关系啊 , 后来 。

Host55:25

没有关系 ,其实没有关系 。

覃超55:26

但起码后来那个 React 做对了一件事 , 就是把那个 DOM 操作从那个虚拟出来 ,因为 DOMDOM 操作是最费时的嘛 。

Host55:34

对 。

覃超55:34

所以把那个那层虚拟出来 ,在 JavaScript 里面重新搞了个什么 virtual DOM, 然后再再来搞一遍 , 这样通过 VDOM 来进行 。其实其实你看这个对 DOM 的一个操作 ,其实它本质上是是和所有的 OS 都是异曲同工之妙 , 比如说和 iOS, 比如说安卓的话 ,他们的本质就是说你要进行 UIK 的操作 , 比如说你要进行渲染操作 , 你必须回到你的主线程 。

Host55:57

那就是 DOM。

覃超55:58

对 , 明白 。

Host56:00

所以当时因为这个原因的话 , 整个效率就提不起来嘛 , 整个效率提不起来的话 , 就是就是用户的体验非常非常差 。

覃超56:07

嗯哼 。

Host56:07

当时的话 ,iPhone 4 其实已经体验非常好了 。

覃超56:11

对啊 。

Host56:11

但是我们的体验的话 , 基本上还在 iPhone 3, 就是连 iPhone 3 GS 都没有 。

覃超56:16

哈哈哈 , 落后了两年至少 。

Host56:18

对 , 就根本就是没法用 。 另外还有一个啊 , 就是说你加了中间加了各种各样的层级的话 , 你的效率是低下的 。

覃超56:24

嗯哼 。

Host56:25

你的效率低下的话 , 你必须用更好的硬件去补 。

覃超56:28

对 。

Host56:28

用更好的硬件去补的话 , 你的电话就是更耗电 。

覃超56:31

对 。

Host56:32

这样的话对用户就是一种哇 , 这个手机为什么这么烫的一种体验 。

覃超56:36

哈哈哈 。

Host56:37

同时的话 , 还有就是说你效率低的话 , 你经常要 load 整个网页 ,而不是像那种原生的 app 一样 , 只只需要发一个请求拿一批 JSON 嘛 , 对吧 ?

我们经常要发整个 HTTP request, 把整个 HTML, 还有吧 ,CSS, 还有 JavaScript 全部拉过来的话 。

覃超56:55

对 。

Host56:55

对整个用户的 ,而而且我们没法特别好的缓存 ,因为我们没法控制浏览器的缓存 , 所以导致就是用户数据量消耗很大 。

覃超57:05

嗯哼 , 就每次都要重新去服务器上取 , 然后再发给服务器去存嘛 。

Host57:09

对 ,是的 。 所以这个项目就一下一下一下子的被就是觉得没希望 , 就是觉得没希望 , 就觉得没希望那种感觉 。

覃超57:18

嗯哼 。

Host57:18

后来就被一步一步降低优先级 , 降低优先级 , 然后一从一开始从十几个人, 一开始直接扩招扩招扩招 , 来了很多 director, 来了很多 manager, 然后这个组就一下变成 80 个人, 然后再到最后将近 200 人, 再到最后就慢慢消减消减消减 , 然后的话 , 相当于整个 HTML5 在其他的 ,在 Facebook 的 iOS 和 Facebook Android 上面都做得不是特别好 。

覃超57:45

对 。

Host57:45

所以整个的话 , 公司就扭转了这个形势 , 就不再遵循 HTML5 了 。 也就是说这个这个 Facebook Phone 的话 ,也没有受到那么多重视 , 然后就把整个 Facebook Phone 后来就越来越消减 , 硬件就不用了 , 然后 OS 也不用了 , 这些 web app 也不用做了 , 然后最后就变成在 Android 上面的一个叫 Facebook Home 的一个一个项目 。

覃超58:06

就这个是就 Facebook Home 是 Facebook Phone 的一个缩减后的结果 。

项目缩减58:06

Host58:11

对 , 一步一步一步一步被消减之后, 就最后变成这个玩意儿 。

覃超58:15

这个应该是 。

Host58:16

开始的时候要做一个航母吧 , 然后说发现航母太难了 , 就做做一个大型战舰大核号嘛 , 然后觉得大核号太大了 , 造不出来什么的 , 然后找一个小驱逐舰嘛 , 然后造造造 , 最最最后变成造一个游艇了 。

覃超58:29

哈哈哈 。 哎 , 那这个在在这之前 , 中间都没有任何人或者这个项目里面没有没有讨论过说啊 , 这个 HTML5 这个性能问题解决不了的话 , 为什么不用原生的这个像 Java 或者是其他什么来写呢 ?

Host58:46

有有讨论过啊 , 然后我们的 Android app 和 iOS 的 app, 就是 Facebook app, 全部都转为原生了 。

覃超58:52

对对 ,因为当时那个 Zac 发了一封信 , 说是是就是说放弃这个 ,他们他们也是不光是这个 Facebook Phone 哈 ,其实包括像 Facebook 的在安卓啊 , 像其他那些这个原生的官方官方客户端 ,也是尝试了相当长一段时间走这个 HTML5 化的道路嘛 。

但是后来也是这个性能问题绕不过去 , 选择放弃的 。

Host59:17

是的 。

覃超59:17

OK,是这样的 。 这这这几件事情其实同时发 , 就差不多在同一个时间发生的那个转型 。

Host59:22

同时发生的 , 对 。 也正是因为这个转型的话 , 后来 Bret Taylor 的话 , 自己的 HTML5 的整个战略的话 , 就是宣告失败 。

覃超59:30

嗯哼 。

Host59:30

以及他在整个公司的话 , 基本上就没有太多的说话力了 ,也没有太多的项目 , 就是由他主导了 。 后来他就离开了整个公司 , 去创立了一个叫 Quip 的应用 。

覃超59:41

OK。

Host59:41

做的也很不错哦 , 那个 。

覃超59:43

哈哈哈 , 对 。

Host59:43

那那也是因为有这个原因的话 , 我我再多多说一句啊 。

覃超59:47

嗯 。

Host59:48

当时的话 ,因为我们也也考虑过啊 , 能不能就直接全部做原生的一个 Phone 出来了 。

覃超59:53

对啊 。

Host59:53

但是我们考虑来考虑去的话 , 就是这个 Phone 的话 ,其实本质上是没有一个竞争力的 , 就是你没法做成一个 OS 出来了 , 你没法做自己的 OS, 做自己的 SDK, 然后和 Android 的 iOS 来打了 , 你就只是变成一个 360 手机 , 就是后来做的那个 Facebook Home 一样 。

覃超1:00:13

哎 , 那但是这个思路 , 这个想法 ,其实用 HTML5 和用不用 HTML6,其实并并不影响这个结结果呀 。

Host1:00:21

是的 。

覃超1:00:22

就是我我不明白为什么 , 如果如果认为用原生的这个啊代码去写应用 , 就和就就没有什么这个这个 differentiation 了的话 , 那那跟用用 HTML5 做了之后又会有什么 differentiation 吗 ?

好像也没有啊 。

Host1:00:39

也没有任何的 differentiation,也也就这样的话 , 整个 HTML5 的话就不就不再坚持了 。

覃超1:00:45

那那整个 Phone 这个项目本身也是同样道理放弃了 。

Host1:00:49

对啊 ,因为也就是说 , 如果我们全转原生的话 , 我们必须自己做一个 OS 出来了 。

覃超1:00:56

就觉得撑不住啊 。

Host1:00:58

就完全不可能 。 是的 。 然后因为我们在整个移动上面的话 , 就是 Android 和和 iOS 自己的本线 , 就自己的主主线的话做得很差 。

覃超1:01:09

对 。

Host1:01:09

所以的话 , 我们要把好的工程师都输送到那边去 。

覃超1:01:13

就不要 。

Host1:01:13

另外的话 ,在 11 年 11 年下半年的时候 ,Google+ 出来了 , 整个 Facebook 做的一件事情是 Go China 暂停 , 认真的和 Google 对打 。

所以的话 , 这么一个高成本的一个项目 , 最后就只能被砍掉 。

覃超1:01:29

所以其实可以这么说 ,是 Google+ 的出现给 Facebook 造成了一个比较大的这个什么生存挑战 , 所以使得他们放弃了一些 , 就是说可以什么非核心业务吧 , 非核心的一些项目 , 然后来集中精力去做好这个老本行 。

Host1:01:46

是的 。

覃超1:01:46

OK。 哎 ,其实那在 Facebook Phone 这个组里面 , 你你你在做哪一部分的东西 ?

Host1:01:53

我在做就是当时用 JavaScript 整个写了一个 data, 一个 data 的 layer。data layer 指的是我当时是用的 HTML5 的里面有个有个 DB, 就是 HTML5 的话 , 就是在那个浏览器里面加了一个关系型数据库 。

覃超1:02:10

是那个 Circle Light 的吗 ?

Host1:02:12

类似于 Circle Light 的 , 对 。

覃超1:02:13

OK。

Host1:02:14

然后基于这个数据库 , 我就写了一套类似于这种 ORM 的一个一个一套框架 ,以及自动获取的一个框架 , 同时还有一个就是发 network request, 就是把这些数据从 server 那边同步过来 , 我们叫 data sync 的 。

覃超1:02:32

就是有点类似于这个 Score 的 call data 那一个部分的组件是吧 ?

Host1:02:37

对 ,有点类似 。 然后的话 , 我们会加一个 disk cache, 就是这个 。 就首先它本质就是说从 server 把数据取下来 , 对吧 ?

覃超1:02:47

对 。

Host1:02:48

然后你就发 HTTP request 从 server 拉 , 同时的话你要注意哦 , 你的时间 , 你的 timestamp 是不是用那个就是做那个 data sync,也就是说只 sync 这个增量 ,而不是每次全取 。

然后在本地的话 , 先是存在数据库里面的 , 就是你的 disk cache persistent, 然后再接下来的话 , 前面再加一个 memory cache, 就是说很快的这种 memory cache 放这里 。

覃超1:03:12

对 。

Host1:03:12

然后再到前面的话 , 就是变成

你你有一套这个 class 啊 , 就是把这些数据的话就变成一个一个 JavaJavaScript 的 class, 然后可以让大家来用 。

覃超1:03:24

嗯哼嗯哼 。 就这个是也是提供给啊 , 就作为一个框架或者是一个 library 提供给你们自己第一方的 。

Host1:03:32

这是一个很大的 data layer, 就是对 , 就是给所有的 first party app 来用的 。

覃超1:03:37

OK。 所所以这个这个这个框架后来后来就不了了之了 , 还是后来就对整个框架都都不需要被用了 。

Host1:03:46

啊 。

覃超1:03:48

哎 ,其实我一直很好奇啊 ,因为现在也看到后来还有一些新的尝试 , 特别是像去年还是前年吧 , 去年后面的有一段时间的哦 ,不好意思我继续打断 , 就是后面接下来的一般的时间计划 , 基本上就是我就是在做整个安卓的很底层的一些东西了 , 就是类似于这个安安卓的自动更新啊 ,以及安卓里面它就是 C++ 那一块的东西 。

黑客趣闻1:04:15

覃超1:04:15

当年我还是和有一个叫黑客 , 一个叫 George Hotz 的 , 就是 George Hotz。

Host1:04:22

嗯哼 。

覃超1:04:22

那个哥们就坐就在一个组 , 然后我们经常很晚的时候也在这个房间里面 , 然后说各种有趣的东西 。他就说他他当年 hack 那个 iPhone,以及 hack 那个 PlayStation 的时候各种故事 。

对 ,George Hotz。 只不过后来他就他就干了七个月就走了 。 现在的话 ,他又红起来是因为他做了一个无人驾驶汽车嘛 , 和那个 Elon Musk 打赌 , 说我这个汽车比这个 。

Host1:04:46

啊 , 那哥们我想起来 。

覃超1:04:48

Tesla 这个汽车 , 对 ,他就 George Hotz 嘛 。

Host1:04:50

对对对 。

覃超1:04:51

他做 PlayStation hack PlayStation 的时候被索尼告 , 然后他就直接在电视里面骂索尼 , 录了一个 YouTube 的这个 rap。

Host1:04:58

哈哈哈 。

覃超1:04:59

然后说索尼什么傻什么什么的 , 要告我之类的 。 然后他旁边有一堆朋友嘛 , 然后他在网上募资 , 然后说大家好 , 我是 George Hotz, 我觉得很多人听过我 ,是因为我 hack 了 iPhone, 然后给大家用了 jailbreak 的 iPhone。

然后现在的话 , 我被索尼告 , 一个日本的公司 , 一个外国的公司来告我 , 你们大家都是同胞 , 都是美国人, 然后我做的之前的开源 , 我做的这些破解的东西都是免费发放给你的 。

但是因为因为此 , 我现在并没有钱请律师来帮我摆脱关系 。

Host1:05:28

还重创了一个律师项目呢 。

覃超1:05:30

来给我募募资 , 对 , 来给我捐款 。

Host1:05:33

对 。

覃超1:05:33

对 , 就很多人出手啊 , 一下子钱就抄募了 。

Host1:05:36

哈哈哈 。

覃超1:05:38

首先他们的民民族凝聚力是有的 , 我觉得特别特别强 。 而且他里面的人, 就是他一开始做这些东西凭兴趣 ,并不要既要钱那种 ,也不为吃穿来发愁 。

但是真正他遇到什么事情的时候 , 真正要一大笔钱的时候 , 就很多人来帮他解决的 。 还有一些他朋友里面 , 还有一些一些崇拜他里面 , 就是就是有 deep pocket 的那种 。他他上那个电视直播嘛 , 还上那个 BBC 采访他的时候 ,他后来说 "Are you have a lot of friends with deep pocket?"

就是口口口袋很深的一些朋友啊 , 就是很有钱的土豪朋友 。

Host1:06:14

哈哈哈 。

覃超1:06:15

对 , 就给他捐钱 。 像现在啊 , 我就重筹一件 T 恤 ,98 人民币的这个 T 恤 , 就很多人在北上广吃一顿饭的话 , 就不止人均就不止 100 块嘛 , 可能 。

Host1:06:26

对 。

覃超1:06:26

我重筹这么一件 T 恤就 22,20 件的话 , 我都筹了现在多少啊 , 将近两个星期了 , 还有 10 天 。 希望听我这些的 , 或者是之前看我知乎的 , 或者是之前多多少少我的我的我说的这些东西 , 觉你觉得有趣也好 , 或者觉得你有鼓舞也好 , 希望你能够支持我一件 T 恤 , 就 100 块钱 。

Host1:06:47

OK。

覃超1:06:48

对 。

Host1:06:48

那个我们那个链接放在说明词里面 , 大家有兴趣可以点来看一下, 去去去支持一下众筹 T 恤这个项目 。

覃超1:06:56

对 , 回到对秦朝大魔王求支持的那件 T 恤 。

Host1:07:00

哈哈哈 。

覃超1:07:01

回到 Facebook Phone 这个项目的话 , 当时后来就被取消了嘛 , 取消的话 , 我总共的话已经工作了将近两年了 , 这个时间一年七个月 , 类似于这样 , 一年八个月 。

Host1:07:11

对 。

覃超1:07:13

然后认识很多很厉害的人啊 , 比如说那个 Matthew Papakipos, 比如说我们从 NVIDIA 挖过来一个 Tegra 3 的主架构师 ,他做硬件的 ,Tegra 3 的主架构师也很厉害的 , 然后以及一批从 Google 挖过来的 , 做那个 WebKit, 做 Chrome, 做 V8 JavaScript engine 的 , 还有就是那个 George Hotz, 就这种黑客黑科技的人物 , 还挺有意思的 。

Host1:07:39

嗯哼 。

覃超1:07:40

对 , 当时也是在这段时间我和赵海平认识嘛 , 主要是打台球啊 , 打乒乓球认识啊 , 然后当当时进去的时候 , 中国人才十几个 , 大家互相都认识 。

Host1:07:51

嗯哼 。

覃超1:07:52

当时认识了葛爷 , 就是葛洪 , 后来做那个 news feed 和 news feed ads 的 , 就是在 news feed 里面怎么加 ads, 这也是一个中国人主导的项目 , 现在变成了 Facebook 最猛的一个现金流 , 将近 90%,90 多的现金 。

Host1:08:06

对 , 就就原生广告嘛 , 这一块的 。

覃超1:08:09

是的 , 对 ,是这样 。 后面当然也是因为这个认识张一飞 ,也就是之前我小时候他的偶像 , 做这个竞赛特别厉害的 ,也是中国国家队和 IOI 的选手 。

Host1:08:20

嗯 。

覃超1:08:22

对 , 整个 Facebook Phone 基本上就是这样 , 就当时的时候是特别神秘的一个项目 , 或者是特别特别高度机密的 。

当时有人泄露这个项目 , 就直接被开除了的话 ,他泄露给 TechCrunch 嘛 , 然后 TechCrunch 又不会写 , 写的又很不对 , 讲 TechCrunch 每次做个什么东西的时候 ,他会跟你讲的这个东西 , 我靠 , 像造原子弹一样的感觉 。

Host1:08:45

哈哈哈 。

覃超1:08:46

当时我们要做一个 Facebook chat 的时候 ,Facebook chat 就是一个即时聊天的工具 ,在 Facebook 上面很很简洁明了的一个 chat 的时候 , 我靠 ,他写出来 ,TechCrunch 写出来就说 "Facebook is doing Gmail killer" 就是 Gmail killer, 要要干死 Gmail 的 , 谁根本就不想去干那个 email。

Host1:09:04

各种吹牛皮 。

覃超1:09:05

对 , 然后我们要说一 , 我们加一个高度定制化的 social phone 的时候 ,他就直接来要搞 iPhone killer 之类的 , 然后害得 Zuckerberg 那个 Zuckerberg 那将近两个星期 , 就不停的在给旁边的这些战略合作伙伴们打电话 , 给他们解释 , 就说我们不是要做一个手机 ,也不要干你们的 , 我们是想把手机上面的这个 social 功能做得更好这样的 。

Host1:09:28

哎 , 那后来那个就是 Facebook Home 这个项目你有参加吗 ?

覃超1:09:32

Facebook Home 没有 , 就是最后发布的时候没有参加了 。 对 , 那时候我已经在 Messenger 了 。

Host1:09:38

OK,因为这因为这个项目其实我还挺巧 ,因为当时刚好他们发布会那天 , 我刚好在那个 Facebook, 就是那个上一个办公地点 , 就是那个叫就是买的上那个楼 , 叫什么来着 ?

覃超1:09:51

Menu Park。

Host1:09:52

对 ,Menu Park 那边的那个地方 , 刚好我在那边 , 呃 , 去找朋友玩 , 然后他们发布的时候 , 刚好在那边看 , 就是他们在那个一个小厅里面发布 , 我还觉得还挺神秘的 , 看了一个现场直播什么的 。

然后后来看一下那个 , 后来回去看了一下网上的报道 , 好像也觉得没什么 , 就觉得这个项目肯定会挂掉的 , 结果果然 。

覃超1:10:14

是的 , 可惜没有参与到后面这个东西 。

Host1:10:17

嗯哼 。

覃超1:10:17

对 。

Host1:10:18

那那个哎 。

覃超1:10:21

我整个全程就已经在呃 , 那个时候已经开始在 Messenger 开始做了 , 当时就开始苦心钻研那个 voice message, 把它加到 Facebook Phone 里面去 , 就是把加到 Facebook Messenger 里面去 。

Host1:10:33

哎 , 那个时候是因为什么 ? 是因为有那个 WhatsApp 的竞争吗 ? 还是怎么样 ?

覃超1:10:38

是 。

Host1:10:40

就是当时我记得 Facebook Messenger 还就不是特别用的人不是特别多 , 然后也不是特别好用 。

覃超1:10:46

是的 , 当时 Facebook Messenger 还在整个 Facebook 大的 APP 里面的 , 后面才慢慢把它就拆出来一个 。

Host1:10:52

就说为什么他非常重视 Messenger 了 ,以及在整个 Messenger 里面 , 然后他是怎么看这个市场的 , 整个 Messenger 对 Facebook 或者对 social 的这边的冲击怎样 ,以及啊 , 后来是怎么收购 WhatsApp 的 , 这中间发生这些故事 ,以及怎么转型的话 , 我们留着下期呗 。

覃超1:11:07

OK。

Host1:11:07

这里的话就是还有一个在 Bootcamp 以及在 Facebook Phone 这个项目在做的时候 , 还有个比较有意思的一个 , 就首先奥巴马来访问了 。

覃超1:11:18

OK。

Host1:11:20

啊 , 那个是在一几年 ? 一一年的时候 , 对吧 ?

奥巴马到访1:11:20

覃超1:11:23

对 ,是的 。 我讲一个轻松的话题 , 这样 。

Host1:11:26

OK。

覃超1:11:27

会好一点 。 当时就是奥巴马为了自己连任 , 然后所以来整个硅谷逛一圈 , 相当于是在 California 这边给他的选票拉好嘛 , 就是之前一直是大华尔街帮支持 Republican, 然后奥巴马作为 Democrats,也就是民主党的话 , 一直是来自这种 IT 业的 IT 精英们的支持 , 所以他就跑到硅谷来 。

当时就有一张非常著名的照片嘛 , 大家在呃 , 奥巴马宴请整个 Google, 整个硅谷的各大公司的话 ,是第一次 Zuckerberg 就是穿一个 T, 穿一个整个西装出现在这个照片里面 。

同时的话 ,他坐在奥巴马的左边 。

Host1:12:10

对 。

覃超1:12:11

然后奥巴马右边是坐的 Steve Jobs。

Host1:12:13

哈哈哈 。

覃超1:12:14

在一个圆桌里面吃饭 , 还有 Eric Schmidt, 还有那个 Intel,Intel 的 ,Oracle 的 , 呃 ,Microsoft 之类的 。

Host1:12:22

对 。

覃超1:12:23

然后再后来就是他来 Facebook 做一次访问 , 类似于这样 。 当时的话是要内部抽签抽签的拿票的 , 后来就拿到其中一张票了之后, 我就得到一个那个奥巴马的票嘛 , 就说哎 , 你被录取了之类的 。

那个票的照片的话 , 我也发在网上了 , 到时候会附在这个链接里面的 。

Host1:12:41

嗯哼 。

覃超1:12:43

我当时就记得很清楚一件事情 , 就是说快到发布会的早上的时候 , 我们准备去排队和吃早饭的时候 , 我就发现这个街道啊 , 还有我们的整个 Facebook 园区啊 , 聚集了很多很多这种新闻采访车 , 就看电视里面什么那种 Fox 24 啊 , 什么 NBC, 各种电视台就在那里 , 然后架那个车 , 那个车的话就把有卫星的天线怎么的竖得很高嘛 。

Host1:13:14

转播车嘛 , 就在那个 。

覃超1:13:15

对对 , 就在做现场直播 , 然后外面的时候 , 你经常会被一些记者拦下来 , 就问你哎 , 你有没有参加 , 你要不要参加 , 你怎么想的 ,他会讲什么东西啊之类的 。

然后 Zuckerberg 在你们内部有没有讲这次和奥巴马的会晤 , 大概会讲个什么东西之类的 。

Host1:13:32

嗯哼 。

覃超1:13:33

但是我们之前就是被 PR 的团队整个训练过嘛 ,他帮我们发了一个邮件 , 就是说不要接受媒体的采访 。

Host1:13:41

哈哈哈 。

覃超1:13:41

媒体来问的话 , 你就说一句哦 , 我不知道这个问题 , 我也不是回答这个问题合适的人, 你可以去 refer, 你可以 defer 到 。

Host1:13:50

找 PR 的人。

覃超1:13:50

pr@facebook.com, 或者是给他一个电话 , 就说我们的电话 , 我们来说 。

Host1:13:55

哈哈哈 。

覃超1:13:56

这件事情 。 然后接下来就是拉这个票 , 凭票入场嘛 , 大家排队 , 没有很多人, 呃 ,不是不是那种人山人海 , 人山人海那样 , 整个的话 ,因为就是我们 Facebook 内部的话 , 我们就 1,000 多人嘛 。

Host1:14:07

对 。

覃超1:14:07

就好像参加一个公司年会一样 。

Host1:14:10

嗯哼 。

覃超1:14:10

参加公司的 all hands 一样 , 就是全体大会一样 , 大家排队就慢慢进去 。 就是安检的话稍微严格了一点 , 好像是整个 secret service 啊 ,secret service 就相当于 。

Host1:14:23

过呃 。

覃超1:14:23

白宫密探 , 就是总统的护卫队 。

Host1:14:26

对 。

覃超1:14:27

类似于那个大类密探 , 中南海 , 中南海保镖 。

Host1:14:33

中南海保镖 , 对 , 这个是对应的概念 。

覃超1:14:36

对 , 整个 secret service 就是重重所谓那个会场 。

Host1:14:44

嗯哼 。

覃超1:14:44

整个一套的那个安检系统 , 你就感觉比那个飞机还要严格的 , 就把你整个身上要扫一遍 , 然后看你还要搜身 , 就是摸你的身上那些口袋里面有没有这种尖锐的物品之类的 。

同时你都把你的工牌要拉好 , 还有那张票也要拉好 。

Host1:15:02

对 。

覃超1:15:03

所有东西都 , 你所有证件都齐全的话 , 很快啊 , 大概一分钟就检查完了 , 你就进去了 。 进去之后你就找个位置坐就好了 。

Host1:15:11

嗯哼 。

覃超1:15:12

然后他整个会场的照片的话我也有 , 然后我还专门拍了一个就 secret service 的特工的照片 , 就是我旁边那个特工还比较矮 , 我一米七好像都没都没有 , 我都不知道怎么会让特工这种所谓的 。

Host1:15:25

你看这个叫什么 , 掩人耳目 , 让你觉得他不是特工 。 哈哈哈 。

覃超1:15:30

对 , 就一米七没有 , 穿个西装 ,不过还挺精神的 , 戴了一个那个耳机 , 就好像是那种监听的这样 。

然后就开始就开始等 , 等了好久之后, 然后开始开场了 。 开场进来的时候 , 奥巴马就一个一个和大家握手嘛 , 当时都是有现场直播的 , 就电视转播那些的 。

Host1:15:45

对 。

覃超1:15:45

然后有专门的主持人, 就感觉好像是在录制一档电视节目一样 。

Host1:15:50

嗯哼 。

覃超1:15:50

然后大家整整个过程是一个小时 。

Host1:15:53

嗯哼 。

覃超1:15:54

Zuckerberg 问奥巴马问题 , 然后奥巴马就回答 , 类似于这样 。

Host1:15:59

啊 , 所以当时那个你们去了现场去了多少人 ?

覃超1:16:02

我们现场整个公司基本上都在 。

Host1:16:04

都在是吧 ?

覃超1:16:05

是的 。

Host1:16:05

那还挺好 。

覃超1:16:07

对 , 当时我记得清清楚楚的话 , 就是非常非常回答问题的后, 奥巴马非常的多 , 就是说回回答问题的时候 ,他答案非常的冗长 , 一个问题经常要从要回答 15 分钟 ,10 分钟才讲完 。

Host1:16:25

哈 ,他都问了什么 ?

覃超1:16:27

就比如说你怎么看整个 healthcare 的 , 你怎么看我们现在的油价的 , 你怎么看这个 energy 的 , 你怎么看我们的这种硅谷的 IT 行业最近要怎么发展 。

Host1:16:40

所以他其实是给呃 , 就是就宣讲他的这个如果要连任的话的一些施政的一些理念嘛 。

覃超1:16:47

对 , 所以都是外交城市 ,其实很无聊的 , 我觉得 。

Host1:16:50

OK。

覃超1:16:51

在当时听的时候 , 就是开始照照片的时候啊 , 看到奥巴马本人 ,以及他们开始开场白的时候讲一些平常的话 , 讲一些笑话比较有趣 ,在后面的话就很枯燥 , 很无聊了 。在后面的话 , 比如说问我们现在那时候油价特别特别贵 , 那时候油价 140 美元一桶吧 。

Host1:17:10

嗯哼 。

覃超1:17:12

油价特别的贵 , 然后就问他你当时怎么 , 你当时是怎么想 ,有什么方案能够把油价能够降下来 。

当时在加州的话 , 油价已经将近 5 块钱了 , 一开始刚到美国的话才两块多钱 , 类似于这种 。

Host1:17:24

对 。

覃超1:17:25

但是奥巴马就不会说哦 , 我有个什么方案 , 明天就把它降下来 , 或者降一块钱之类的 。他从最开始这个 energy 来来说 , 再说这个政府怎么把这个 energy 截下来 , 然后再做 clean energy 的汽车啊 , 再推广各种就是 public policy 来减税 。

如果你买电动车的话 ,以及我们的政府 , 整个整整个政府部门以及大的公司的话 , 会先鼓励大家使用清洁能源的汽车 , 把所有的这些大气排放降下去 , 然后这样的话我们对石油的依赖就会小 , 然后这样的话啊 , 油价就会慢慢因为供求的关系降降降降 。他这个一个整个整个步骤 ,5 年、10 年最后才能实现 。

我就在这听讲 , 我觉得好无聊啊 , 我觉得我真的是 。

Host1:18:10

等不了那么久 。

覃超1:18:11

哈哈 ,是的 , 大概就这样过程 。 所以的话 , 嗯 , 整个奥巴马就是我我能够记记出来就这些了 , 然后接下来就是一些照片放这里 , 大家可以看 , 差不多是这些 。

Host1:18:25

今天的节目暂时就先到这里 , 感谢收听 IPN Podcast 网络旗下的 IT 技术主题娱乐节目 《 内核恐慌 》。 我们号称 hardcore,但也没有干货 。

想听的人听 ,不想听的人就别听 。 你可以为本节目捐款 , 捐款地址是 colonelpanic.fm/donate, 捐款金额随意 , 只要是 8 的正整数倍就可以 。

捐款不会给你带来什么 ,不捐也不会让你失去什么 。 我们的口号是 no hard feelings。 如果你有任何反馈 , 可以发电子邮件到 colonelpanic@ipn.li。

同时也欢迎您收听 IPN 旗下其他几档节目 :《IT 公论 》、《 未知道 》、《 他一来了 》、《 流星通讯 》、《High Story》、《 印象 》、《 无次元 》、《 薄纸 》、《 选美 》、《 陛下官 》。

我们下期再会