第36章 土壤
九月第二周,帕洛阿尔托的风里裹着一种反常的急迫。大学路上,绿生生的梧桐叶被风片片扯下,铺在路面还没来得及枯黄,又被飞驰的轮胎碾进柏油路里。
达斯汀把Facebook Platform开发者文档的终版,重重地压在扎克伯格的大桌子上。白色封面,一行黑体标题:《Facebook Platform v0.1: Build on the Social Graph》。副标题是达斯汀坚持加的:让社交关系成为互联网的基础设施。
“这个副标题不是你写的。”帕克翻了两页,头也没抬。
“你怎么知道?”
“因为你写不出‘基础设施’这个词。这是陈舟的逻辑。”
达斯汀咧嘴一笑,坦然承认:“对,我只负责写代码。”
扎克伯格把整份文档从头翻到尾,没有说话。然后他摘下眼镜用卫衣下摆擦了擦,把文档递给陈舟。
“看过几稿了?”
“三稿。第一稿太技术化——只有开发者能看懂,普通合作方根本不知道我们在说什么。第二稿又太简略,把核心接口一笔带过,开发者看完不知道从哪里开始写第一行代码。”陈舟把文档翻到其中一页,指着上面一个代码示例,“这一稿刚好。既能让开发者直接引用,也能让非技术背景的合作方看懂Facebook Platform能做什么。但发布前,必须内测。”
“多久?”
“两周。十二家内测开发者,每家分配不同的API接口侧重点。照片分享三家、活动管理三家、书评社区两家、音乐推荐两家、综合应用两家。两周后根据内测反馈调整文档和接口稳定性,然后正式对外发布。”
扎克伯格点了点头。“谁负责审核开发者资质?”
“我来。”帕克从沙发上站起来,走到白板前。他没有像平时那样翘腿靠回去,而是站得很直——陈舟认识他以来,第一次看到他这么认真。
“开发者审核不能只看技术能力。Napster当年开放API的时候犯过一个错误——只要你会写代码就给你接口。结果涌入一批垃圾应用,有的抄袭我们的界面,有的在用户不知情的情况下抓取数据,有的直接拿我们的接口做色情内容分发。用户骂的不是那些垃圾应用——是Napster。因为接口是我们给的。”
帕克拿起马克笔,在白板上画了三个方框。
“所以这次的审核标准,三个维度。第一,产品是否基于真实社交关系——如果只是一个单机工具,不给过。我们要的不是蹭流量的,是能用好友关系做出新东西的人。第二,用户授权机制是否完整——应用在调用好友数据之前,必须经过用户逐项授权。不是默认勾选,是逐项。第三,有没有可持续的商业模式——不要求盈利,但至少要有一个清晰的变现路径。纯烧数据的应用不给过。”
达斯汀从地板上举起手,手里还攥着那根已经嚼烂的铅笔。“我加一个维度——代码质量。如果开发者的代码写得比我三个月前那版排序算法还烂,不给过。”
“你那版排序算法把好友动态按字母顺序排了一遍。”玛利亚的声音从角落里飘过来,没有抬头,“按你的标准,你自己都过不了。”
客厅里安静了一瞬,然后所有人同时笑了。但那笑声里没有轻松,只有一种大战在即的兴奋与紧绷——和三个多月前在宿舍里第一次讨论照片标记功能时完全不同。那时候他们在讨论一个功能,现在他们在讨论一套规则。一套所有想进入Facebook生态的人,都必须遵守的规则。
内测开发者名单在三天后确定。十二家,涵盖四个品类。
一家叫“Slide”的照片分享应用引起了陈舟的注意。创始人是扎克伯格的哈佛同学麦克斯·拉夫琴,之前在PayPal做过产品。陈舟在开发者资料里翻到麦克斯的简历时,手指停了一瞬——前世Slide在2007年成为Facebook Platform上最火的第三方应用之一,月活一度突破五千万。现在它出现的时间比前世早了将近两年。
内测开始的第三天,麦克斯发来了一份原型演示视频。
达斯汀把视频投在大屏幕上。画面里,用户用Facebook账号登录Slide,上传照片后自动同步到好友的News Feed里。被标记的好友会收到通知,点击通知后跳回Slide查看完整相册。整个过程不需要离开Slide的界面,但所有的社交传播都在Facebook的土壤上发生——好友关系、身份认证、通知推送,全部调用Facebook Platform的接口。
达斯汀盘腿坐在地板上,盯着屏幕久久没出声。
然后他说了一句让所有人沉默的话。
“他们三天干完了我们内部团队一个月的活。”
“这就是平台的力量。”帕克靠在旧沙发上,腿翘着扶手,但声音里没有平时那种玩世不恭,“让比你更快的人帮你跑。你跑得再快,也不可能同时做社交网络、照片分享、活动管理、书评社区。但如果你把土壤铺好——所有你能想到的应用,都会有人帮你种上去。我们做的是社交网络,但Slide做的是照片分享,下一个可能是活动管理,再下一个可能是音乐推荐。每一个应用都在帮Facebook扩大生态。”
“问题是土壤能铺多厚。”玛利亚的声音从角落里飘过来,精准地刺中了所有人的神经。
她没有抬头,手指还在键盘上轻轻敲着,但语速比平时快了一点。“Slide三天做出了原型,但他们的服务器架构能不能扛住Facebook级别的用户量?如果他们的应用在用户高峰期崩了,用户不会说是Slide崩了——会说是Facebook Platform崩了。每一次第三方应用的故障,都是在消耗用户对我们平台的信任。”
“所以要在正式发布之前做一轮压力测试。”陈舟说。
“我已经安排了。”玛利亚的目光从屏幕上移开,落在白板上那个刚刚被画出来的方框上,“拉杰负责接口负载测试——他要模拟一万个Slide用户同时上传照片的极端峰值场景。我负责安全审计。每家内测开发者在正式接入之前,必须通过三层防线——接口审计、数据脱敏、异常调用自动熔断。”
她顿了一下。
“这套防线需要一个正式的名字。”
“‘玛利亚防线’。”陈舟说。
玛利亚的手指在键盘上停了一瞬。
“这个名字太个人化了。”
“不是个人化。是责任化。”陈舟走到白板前,在平台架构图旁边画了一个新的方框,笔尖用力得几乎划破白板,“当所有开发者都知道Facebook Platform有一套防线叫‘玛利亚防线’的时候,他们就知道——想在数据上动手脚,先过你这关。这不仅仅是一道防火墙,这是平台化的红线。用户授权面板是法律防线,帕克的审核标准是商业防线,你的三道安全机制是技术防线。三道防线合在一起,才是完整的平台规则。”
帕克从沙发上站起来,走到白板前,看着那个方框。
“这个名字会留在开发者文档里。不是内部代号——是正式名称。”他拿起马克笔,在方框上方写了一行字:玛利亚防线——平台安全标准。
拉杰从机房探出头,说了一句:“这个名字比我的拓扑图好记。”
玛利亚没有回答。但她的手指重新开始敲键盘的时候,节奏比刚才快了一点。
晚上,陈舟坐在台阶上,把今天内测开发者名单从头到尾看了一遍。加州的夜风从大学路那头吹过来,梧桐叶在路灯下打着旋。
玛利亚从机房里走出来,在他旁边坐下。没有说话,只是把一杯咖啡放在台阶上。拿铁,放了奶和糖。
“你今天话比平时多。”
“是因为有人试图用一个漏洞百出的排序算法申请开发者资格。”玛利亚端起咖啡抿了一口,“我拒绝他的时候,他问我为什么——我说你的代码质量连达斯汀都不如。他居然问‘达斯汀是谁’。”
“然后呢?”
“然后我说——达斯汀是那个把所有好友动态按字母顺序排列的人。如果你连他的bug级别都达不到,就不要申请Facebook Platform了。”
陈舟笑出了声。
“你是从什么时候开始,把达斯汀的bug当成最低标准的?”
“从他把那个bug修好之后。”玛利亚看着远处打着旋的梧桐叶,声音忽然放得很轻,“以前他只顾写得快,修完字母排序bug之后,他学会了在写之前先想。一个人如果能从自己最丢人的错误里学到东西,他的标准就值得被当成门槛。以前他是团队里最容易被调侃的人,现在他是所有开发者必须跨过去的第一道技术门槛。”
陈舟端着咖啡杯的手微微顿了一下。这大概是他从玛利亚嘴里听到过的,对一个人最高的评价。
深夜,陈舟一个人坐在折叠桌前。他把今天平台化推进的所有节点整理成一份简短的记录——开发者文档终版完成、十二家内测名单确定、Slide原型三天上线、玛利亚防线正式命名、帕克的审核三维度确定、达斯汀把自己的bug变成了最低门槛。
他掏出诺基亚1100,打开记事簿,在最后面加了几行新的:
2005.9.8 Facebook Platform开发者文档终版完成。Slide原型三天上线,速度是内部团队的三倍。玛利亚防线正式命名——接口审计、数据脱敏、异常调用自动熔断。帕克审核三维度:社交关系、用户授权、商业模式。达斯汀把自己的bug变成了最低门槛。
合上手机,他靠在椅背上。窗外加州的月亮很亮,挂在大学路梧桐树的上方。
同一轮月亮,此刻正在太平洋另一头升起——照着杭州直吉祥巷工地围挡上那幅巨大的品牌海报,照着圣马特奥车库里正在准备去谷歌总部签约的陈士骏,照着东京SoftCapital总部大楼里高桥真由美正在为九月签约准备的最后一版合资方案。
三条线,都在竞速。Facebook Platform的开发者生态在加速成型,谷歌收购YouTube的节奏在加快,杭州的品牌扩张在稳步推进。
而在这场竞速中,谁先铺好土壤,谁就拥有了整个赛道。

