重构(Refactoring)是一个软件方面的技术词。官方解释就是通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。说人话就是代码写着写着觉得越来越烂,写不下去了。于是决定动个大手术,重新调整调整结构,重新改改名字,该删的删,改挪的挪。
岳风老师来到这个公司后,应该是很有重构的冲动的。
岳风老师
第一次听到岳风老师的名字是刚刚和苏穆棠在一起不久,当时还没有找到投资,也没有开始在一起办公。
苏穆棠说:“岳风老师下周要回国,我在想是不是找下清华,让他去做个talk(演讲)。”
我当时刚和苏穆棠在一起,感觉这个fell(体验)好高端,好像清华是他们家开的一样。“哦,这个啊,好弄吗?去清华做talk,是不是需要挺高级别才行啊?”
苏穆棠说:“那可是岳风,清华哪是那么容易就能请到来做talk的。”
瞬间觉得逼格满满。
这个事情后来不了了之了。直到一年多后,岳风老师正式加入轻鼎智能时,果然去清华做了一次talk,场面火爆,当时主讲人不少,但是最耀眼的明显是岳风老师,相当给轻鼎智能争面子。
岳风老师讲话总是有种温温暾暾的感觉,声音不大,没有力量,也没有**。他会花时间讲些比较简单的道理,通俗易懂。还会夹带一些美式幽默,比如在PPT里加一段搞笑短视频,往往能把人逗乐却不失高雅。和他的高大上背景搭配在一起,给人一种平易近人、温文尔雅的大神形象。
岳风老师确实是个神级人物。上古时代的清华计算机系毕业。出国在MIT(麻省理工学院)任大教授,论文被引用超过2,000,000次,后来跳到Google研究院,是研究院的元老人物,而且一干这么多年。
最牛×的光环是他是一个顶级人工智能元老会的Fellow(董事),算是学术圈里拥有了终身成就奖。
有段时间找A轮不是很顺,我去找苏穆棠:“会不会找不到A轮啊,我感觉有点担心啊。”
“Don’t worry(别担心),实在找不到就找岳风投一轮就好了。”
“不是吧,他这么有钱,个人就能投个公司A轮?”
苏穆棠:“你想他什么时候去的Google,他Vest的Money投一下我们还是没有任何影响的!”
所以,岳风老师简直就是学术圈高富帅,各个方面看起来都无懈可击。
公司初创时,我和苏穆棠闲时扯了不少淡,基本上都是关于岳风老师的。我一度认为苏穆棠之前十年的社会关系可能就只有岳风老师一个人。
“岳风会用各种语言说‘我不会讲××语’,而且极其流利,有一次我们在纽约街头,跑来一个日本人问路,叽里呱啦说了半天,然后岳风居然也一样叽里呱啦和他对话。我大为惊异:‘你居然还会日语,没听你学过啊。’岳风很得意地说,我和他说的是我不会讲日语。”
私下里,苏穆棠也会消遣一下岳风老师。早期他闲时经常自夸,惯用的套路就是通过吹牛和吐槽岳风老师变相抬高自己。我在内心对于这种不堪的行为进行过深刻批判,当然表面上还是一脸谄媚的倾听和接话茬拍马屁。
“岳风编程速度快,但是东西其实经常don’t work(不能运行),当时和我在谷歌的时候,同一个东西我们都各自做一份,最后实际采用的,Always! Always(通常)是我做的。”
实话说,苏穆棠写的代码确实道行很高,雍容大气,很有章法。
“那是为什么?”我装出好奇的样子问道。
“他喜欢编程,写代码写得也快,但是写的代码当demo还可以,实际中就不怎么work,实际工程中还是我写的更work。”
各种吐槽多了,我一度误认为岳风老师是学术界纸上谈兵的骗子。
现在回想起来,当时苏穆棠对自己还是有着充分自信的。和后来抓岳风像抓救命稻草的那个样子相比,我还是更喜欢之前睥睨一切的苏穆棠。所以说创业毁自信,尤其是之前一路成功的人,没有经历过像样的失败所带来的心理挣扎和打击。一旦发现事情开始不像自己预想的那样发展,就容易从极度自信走到极度自我怀疑的极端。而且是短时间周期性高频的自我怀疑,给人以惶惶不可终日之感。
牛人创业
这样的大神为何要从美国回来,加入一家创业公司呢?
我们每天看新闻里国家欣欣向荣,屌丝却在互联网上比惨比得不可开交,感觉这个世界很割裂。
进入创业圈后,不管是看到每个孵化器兄弟公司的生生死死,还是参与到自家公司的运营后,才发现割裂其实无处不在。
公司PR的文章说是为了梦想:“对于在学术界备受尊重的岳风而言,这是又一次将研究成果转换成实际产品的尝试,也为自己的研究找到一条实践路径。”
苏穆棠是这样说的:“岳风的父母年纪大了,所以他需要回国常住。他这个年纪,也不想去企业,也不想去学校,这辈子没有做过startup(创业公司),有我给他搭的这个架子,正好试一次,他不需要管乱七八糟的事,I can do whatever he(我能做一切他)不喜欢做的事,And he can make all decisions(他能做所有决定)。”
苏穆棠缓了一下,接着说:“他如果做startup只能和我一起合作,因为他没法和别人合作的。”
我觉得这里好像有八卦可以挖,于是问:“为什么?”
苏穆棠没有接我的茬,继续说道:“他之前一直只做research(研究),没有做过产品。所以这次他要自己来完全决定一个产品,他觉得还挺有意思的,这也是其中一个加入我们的reason(理由)。岳风加入轻鼎智能的条件就是,he want to make all decisions. And we cannot 不听岳风的,because if he is unhappy, he will go definitely(他想做所有的决定,我们不能不听岳风的,因为如果他不开心,会很干脆地走掉),他干过这种事,他以前曾经加入过一个公司,因为unhappy(不高兴),两天就走了。他走了的话,随随便便还是可以拿到投资。So (所以)我以后的job(工作)就是让岳风老师爽。岳风为什么会来,你以为那么easy(简单)吗?一年多来,你拉到过什么人来?”
“好像确实没拉到什么人,不过我一直在很辛苦地埋头带领大家做项目啊。”
苏穆棠这样总结自己这一年的创业:“这一年,什么都没有做,搭起一个架子,把岳风老师请进来,that is(那就是)我做的唯一正确的事情!The only right thing(唯一正确的事)!”
由此可见苏穆棠对岳风老师的看重。
我问:“那我们一年多每天起早贪黑,紧赶慢赶做的那些项目,输入法、爬虫、达普数据是为了什么?”
苏穆棠回了我一个凌厉而肃杀的眼神:“我只是为了锻炼队伍,It’s just for practice(仅仅是为了锻炼)。”
这句话对我触动很大,当时直接被震撼到了,半天没有回过神来。我想我可能需要时间好好消化消化这句话的含意。感觉就像当我们雄心万丈地去征服世界的时候,在拼杀得热火朝天的时候,忽然被导演告知,你们只是用来暖场的,可以去死了,主角就要登场了。
不过后来又觉得,苏穆棠这么说,只是为我们的一系列失败决策找一个借口。然而,这个借口的效果未免太差,还不如直接承认“我错了”比较好。因为大家很容易接受和理解失败,人孰无过,但是很难接受在一个局里被愚弄,因为一旦接受,就相当于承认自己傻。而做局的人还一本正经地说,本来就是这样,这你都没有看出来,是不是傻。这样会让人更难接受。
记一次亲密接触
我和岳风老师有过一次交流谈话,长达两个小时,这也是仅有的一次。好像之后他就再也没有理过我。
这一天,他突然来找我,拉我到窗边一个舒服的沙发坐下。沉默半晌,突然开始聊我负责的事情。
他的话始终比较少,基本是问我问题。当时不懂他为什么要问这些问题,后来慢慢反思,可能就是这些问题导致了达普数据被踢出公司。当然,这些理由也都是没有根据的猜测。
在一家早期公司,沟通已经如此不顺畅。我们需要去揣摩和推测伙伴做的每件事的动机,信任缺失到这种地步,公司如何不完蛋?
岳风:“你对达普数据这个项目的前景怎么看?”
我:“我认为达普数据在现在和未来两三年对APP都是一个刚需,因为流量越来越贵,开发者需要任何一个可以刺激提高流量的方式,刚开始达普数据声音还小,很多APP开发者看不到,不过随着越来越多的开发者看到,使用量会是一个加速的过程。”
岳风:“嗯。”
“但是长期来看,APP的前景不明确,所以存在比较大的风险。”我还是挺诚恳的。
岳风:“嗯。”
“退一步说,即使达普数据真的可以赚钱,或许苹果和Google或者手机厂商会意识到,可以直接在系统层级支持类似技术。技术方面对于他们来说没有任何门槛,就看他们怎么理解这个事情的意义了。”
岳风:“嗯。”
我又说了一堆看法,岳风不说话,只是时不时嗯一下。
我想,这种尬聊真是费劲啊,然后出了一身汗。之前一般是我让别人觉得费劲,真是风水轮流转。
最后我问了最想问的一个问题:“我觉得‘MO’这个项目很好,是未来的趋势,因为从人性角度来讲,有个全能的秘书是最舒服最没有学习成本的事情。土豪老板们发达了都是先配一个秘书,为什么?因为直接和人沟通最人性化。所以MO一定是一个方向。问一句,您判断一个可以通过图灵测试的AI还有多久?”
岳风老师沉默了一会儿后说:“很久很久,现在还看不到那一天。”
从此苏穆棠也是渣
MO是岳风老师主导的新项目,是一个类似于私人秘书的手机系统,可以做秘书能做的绝大部分事情。用户和手机用语音进行交流,提出一个需求,MO负责解决这个需求。比如,用户可以和手机说:“打车回家。”然后手机会自动启动滴滴打车,将目的地设为自己家,叫一辆出租车。
MO刚开始做的时候,苏穆棠施展全局大视野,通盘考虑整个产品可能遇到的所有问题。他认为,对话系统是必不可少的。于是提前谋划,兴致勃勃地开启了聊天机器人子项目,自己亲自带队,拉出几个人成立专项组,踌躇满志,开始攻克技术堡垒。
“很多事情我都需要提前考虑,sometimes(有时候)岳风想不到,但是肯定绕不过去的东西,我都要提前做布局。Until one day (直到有一天),一旦需要的时候,他会忽然发现,做好的东西已经在那里等着了。”
“嗯嗯,你布局的能力确实得赞。”我不禁叹服。
过了一个月,我问:“聊天机器人进展怎么样了。”
“Cancel(终止)了。”
“为啥?”
“岳风不让我做了。他说 I should focus(我应该集中精力)。”
苏穆棠有点委屈。
“那一条指令找不到执行的 APP怎么办?总要继续和用户交流一下。”
“岳风说,Just tell them(只需要告诉他们)找不到就好了。”苏穆棠显得有些委屈。
“那样体验岂不是不够友好?”
“岳风说,最重要的是要 Focus!”
苏穆棠的天赋是同时开10个项目,而岳风可以斩掉9个,剩下一个专注 Focus。某种程度上说,这对创业公司应该是件好事。
唯一让我觉得有点惊悚的事情是岳风老师的title(头衔)其实是程序员。他每天坐在你对面,在厕所碰到总是会微笑着点头打招呼,和蔼可亲,平易近人。他不会参与管理,不会去布置任务,不会去和人沟通具体问题,好像就是一个普普通通的码农,只在努力写着属于自己的那一点点代码。但是在背后,岳风老师瞬间变身大 Boss(老板),指点山河,掌控一切。整个过程平滑切换,无须技能冷却时间,而且对公司其他人不可见。知道这些以后,我对岳风老师有遥不可及的感觉。
轻鼎智能有了新的核心决策层。有了岳风老师后,其他人对苏穆棠来说都是外围男女。
我其实有点酸。
这种心理状态和正室被小三篡位后的心理应该是一样的,还是武则天似的强力小三。
诛心是不对的,自卑也是不对的,但是禁不住会有种感觉:岳风老师其实是看不起我们这帮渣渣的。
苏穆棠说:“岳风为什么不想回中国做startup(创业公司),The main reason is(最根本的原因是)中国的学生太差了。我们在谷歌的时候,实习生都是Stanford(斯坦福大学),Princeton(普林斯顿大学)的。回来中国只能找清华北大的。我这一年做的很多work,只是想告诉他,中国的学生也不差,清华北大的学生也是可以用的。他看了一段时间,觉得确实也还行,这样他才同意试试的。”
苏穆棠这么解释,我就明白了。“天地不仁,以万物为刍狗”,岳风看我们这些学渣渣估计就像是在看刍狗一样。所以他可以雷厉风行地做任何决定,我们的想法和感受对他来说并没有意义和任何卵用。如果像我这样的渣渣还经常对每个决定指手画脚,评头论足,刷刷存在感,那就更不招人待见了,因为这就不是一个合格的渣渣应有的态度!
但是苏穆棠自己到底怎么看我们这帮人,是不是也是一样的上帝视角?我感觉或多或少也有一些,毕竟他们以前的圈子是如此高大上,回来一看国内这群人这么low(低端),不免会有俯视众生的万丈豪情,也是人之常情。
看不见的手
岳风老师加入以后,很多次,苏穆棠和我商量事情,比如说拒绝一些人或者拒绝一些事情,但是又不想得罪这个人,他想到的方法就是:“嗯,I can just tell him(我只需要告诉他)岳风老师不同意。”
惨痛的是,就是“岳风老师不同意”这句话后来也把我和整个达普数据踢了出去。
苏穆棠说这全是岳风老师的主意。岳风老师不喜欢做达普数据,因为他必须听岳风的,所以身不由己。我认为这个理由一大半应该是真的,而不单单是拿岳风做挡箭牌。我自己也说不清楚为什么会有这样的感觉。
谈判的时候告诉对方,我后面还有一个“没有露面的人”,他是最终的决策者。虽然他给了我足够大的谈判权力,但如果谈判条件超出了我的权限,我还是需要向他请示。受限的谈判权力,才会有真正的力量,比全权谈判者,更处于有利的状态。
——权力有限策略
如果商学院方面读的书少,一旦被花样实践各种谈判策略,就会不知所措。所以还是需要努力补课才可以做到知行合一。
消失的输入法
做了一年多,在快做出可以上线产品的时候,输入法被干掉了。
岳风老师加入说:“输入法别做了。”
然后输入法项目就关掉了。
苏穆棠一脸委屈地说:“Actually(实际上),岳风是看了输入法以后被打动才 join us(加入我们)的,没想到他刚来就对输入法下手。”
“我们投入这么大,为啥一声不响就干掉了?你他妈争一下啊。”我有点恼火。
“唉,岳风说以后就全都是 speech input(语音输入)了,需要手动 input 的输入法会慢慢消失掉。”
给一个理由
我不太认可这种观点,至少我自己就不是一个纯语言输入的用户。首先用户惯性是一个很重要的因素,大家习惯了键盘输入,很难一下子转变过来。第二,我觉得内向的人其实不太喜欢语音输入。第三,如果做些坏事,比如商议去抢银行,也不太适合语音输入,那么这部分市场也会丢掉的。
看每件事情都有不同的角度,不同的侧面,有一万个理由支持一个决定,也有一万个理由否决同一个决定。
每个人的基因、家庭、文化和人生经历不同,对这些因素的思考也不同,由此导致了不同的价值观系统——送你一根蜡烛,有人想到晚餐,有人想到皮鞭。
所以,观点一定会有不同。但是在轻鼎智能做决策,也不是根据观点的争辩来进行的。在轻鼎智能,一个决定是否会通过并且执行,主要看决定是苏穆棠来做的还是岳风老师来做。而且完全没有办法动摇。
如果苏穆棠赞同一个决定,其他人反对,那么决定通过。
如果苏穆棠赞同一个决定,岳风老师反对,那么决定不通过。
如果岳风老师赞同一个决定,那么决定通过。
此法则永远有效。
我有次问苏穆棠:“为什么岳风老师这么任性?大家有事情做决定总得好好商量一下吧。”苏穆棠想了想,然后摸摸头,笑了一下说:“他就是任性,你有什么办法?!Actually(实际上),没办法。”我觉得这样的回答和耍流氓没有什么区别。
当然,如果岳风是乔布斯或者马云,那这种决策逻辑肯定是最好的最有效率也可能是唯一可能获得极大成功的方式。
对于身在其中的我们来说,就是要自己判断一下他到底是不是乔布斯或者马云了。因为这种完全服从的过程会很折磨人,如果他是乔布斯或者马云,那我忍了或许值得,如果不是,那简直是亏大了。
还有潜规则
后来我还发现一个潜规则。
有段时间,运维问题最焦头烂额的时候,苏穆棠来找我,说Github上的公司名要改,你这边安排统一改下包名。我当时就崩溃了。“不作不行吗?十几万行代码,几千个配置文件,每天几百万次客户调用,每个文件都改包名,这肯定会出无穷多的bug(漏洞),客户一定会恨不得把我们碎尸万段。你让不让我活了?”
“因为我们公司也要改名了。”苏穆棠一本正经地说道。“岳风老师的女儿不喜欢这个名字。这个名字有点俗,在湾区已经烂大街了,太多公司叫这个,他女儿都不好意思和人讲。而且这个decision (决定)已经made(做)了,下个月要更改完所有代码。这个不是找你商量,just let you know(只是通知你一下)。”
再给个理由
很长一段时间,我都惊诧于苏穆棠对岳风的顺从。之前已经熟悉了他的坚定和固执己见,这种三百六十度的大转弯真是让人大跌眼镜。
因为以前问他一个决策的时候,他会耐心地讲这个决定是基于什么逻辑,讲得自成体系有理有据,大部分时候挺让人信服。即使有时候有些细节不靠谱,但是也是可以争论的。现在好了,理由很单一,全是“岳风说必须这样做”。我感觉一下由民主社会移民到了帝制社会。
之前有一次,有个团队找我们合作。他们做一款APP桌面启动的产品,其实和搜索很像,只是表现形式不同。他们的产品日活百万,创始人是做产品出身,很喜欢我们这边的技术感,希望发挥各自优势,一起合作。他们的产品设计得很人性,而且有一定用户基础。
我觉得轻鼎智能最缺的就是产品人员,而且我们连半个实际用户都没有,如果可以合作,可以快速验证自己的技术,对双方都是件很有价值的事情。所以我很努力劝苏穆棠,希望可以促成合作,实现共赢。
苏穆棠考虑良久后说:“合作不是看有没有价值,而是看谁具有不可替代性。他那个产品,我们花two weeks(两周)就可以copy一个出来。而我们的技术,他们靠自己很难获取到。所以,they need us,but we don’t need them(他们需要我们,但我们不需要他们)。我们具有不可替代性。”
我一想,虽然两周时间这个判断有点过分,但是这个逻辑确实有道理。于是,这个合作就没有然后了。
苏穆棠的价值观中一直在计算的一个东西就是不可替代性。岳风老师明显在这个团队中是不可替代的,因此完全听岳风老师的意见、建议和决定就是很合理很自然的事情。至于剩下的人,其实谁都不是不可替代的,因此时时计算一下cost(付出)和benefit(回报)就好了。Easy(多简单)!
公司战略
做技术的公司就应该专注做技术,像Google,Facebook一些部门那样,搞些“TensorFlow”“caffeToGo”这种底层框架的项目出来,目标就是让尽可能多的人来用,而不是学人家做C端产品。
做产品的公司就不要非自己做底层技术,而是把技术当作一种手段,尽可能做系统集成,能找到开源项目可以满足要求就用开源,千万别什么都想自己做。
比较怕的是技术驱动的公司专注做产品。
没有明确的目标,什么都觉得可以做,任何东西做一段时间又会觉得没什么效果,怀疑是不是方向错误,于是就会考虑再换个方向。
方向就这样不停换来换去。轻鼎智能做的输入法就是一个典型例子。
还有一点,技术人员做任何东西都觉得应该自己做,达普数据的开发过程中就没有很好地利用已有技术和服务而快速开发,这其实是个问题。比如有次我说我们花点钱买点testin的测试服务吧,苏穆棠说“why not(为什么)我们不自己做auto test system(自动测试系统)?”
“自动测试我们已经在代码层做得很完整了,这个是用户对于UI 的测试,自动测UI如果要做好太不容易,不如买点服务,让第三方测试团队来测。”
“we should not just because(我们不能仅仅因为)不容易做就不做,If we need it(只要我们需要),就去做。”
“很多用户需求还没有解决,花人力做这个效果也不好,时间还长,综合考虑,不如花点钱买个服务。”
“If we need it,then we have to do it(只要我们有需求,我们就必须去做),花钱请人来测是不work(行)的,人总会犯错的,只有机器才不会犯错。我在谷歌已经无穷次验证过这个真理了。”
……
后来的结果是服务没有买成,我也没有花人力去做自动化测UI的子项目(我当然没这么蠢)。于是,每次更新版本,我只好自己人肉去测试,但是我没有精力覆盖太多的测试用例。再后来,事情一多,我自己也懒得去测了。有时候收到用户抱怨说服务早已不可用,我们才后知后觉。
如何制造一把大宝剑
苏穆棠虽然工作了很长时间,但他没有做过完整的产品。这是轻鼎智能的一个核心问题。
他在谷歌做的是高级科学家,虽然做了八年,其实都是做算法demo(模型)。本质上和我们本科毕业做的那种东西类似,不是产品,不是产品,不是产品。
他可能两周就能做完一个demo,然后扔出去,有做产品和工程的把demo应用在项目里。
慢慢地,这种工作方法和心智模式已经深入骨髓。
我以前在一家外企的时候,接过一个总部研究院的项目,就是这种类型。
研究院觉得我们一起造一把大宝剑吧,我已经做完了最重要的部分,剩下的零碎不值得做,你们这些做工程的渣渣做完就行了。
我们这些做工程的会觉得,一起造大宝剑,你做了一个剑穗给我,剩下的由我来,荣誉和利益你来拿,锅我来背。然后两边就暗斗起来,最后结果就是狗咬狗,一嘴毛。
真是一不科学,二不合理。
最开始做输入法,苏穆棠说,咱俩做半个月,剩下的扔给那几个小孩做呗。
后来做达普数据,苏穆棠很想把一个在百度有很高职位的同学拉进来。苏穆棠对我说,他进来,就可以把达普数据扔给他,然后你去带爬虫团队。
这个心智模式不变,轻鼎智能还会一遍一遍重复输入法的故事。
投资人觉察不到这个问题,所以并不影响我们拿到投资。
这也是投资者的悲哀。
输入法项目消失了
很快就会被大家遗忘
大家会忘掉当时做输入法的时候那坚定的信念大家也会忘掉做输入法所烧掉的那些投资大家也会忘掉做输入法的时候加的那些班,那些周末和不眠的夜晚
那些放弃陪伴家人的时间
那些绞尽脑汁的代码
就像从来没有过这个项目一样
话说回来
话说回来,我自己后来反思,关掉还是对的,这种模式的输入法其实也不会有前途。
我们的用户体验目标是用户只需要输入拼音的首字母,就可以打出这句话。因为我们分析过所有的话,所以我们知道首字母代表的是哪句话。这种判断逻辑上的问题是,句子越长猜得越准;句子越短,相同首字母但是句子不同的可能性就越大。
但是,移动互联网给人们的交流带来一个新的趋势:因为输入法确实不好用,大家确实需要花很长时间才能输入一句话。所以我们已经进化出用短句解决问题的能力,我们聊天中的每一句话已经越来越短了。微信上就经常是5个字以下的交流。比如:
甲:“你哪里人?”
乙:“我是贱人。”
甲:“……”
乙:“错了。”
乙:“我是吉安人。”
甲:“哦。”
乙:“坑爹输入法。”
如果都这种交流,我的输入法一定歇菜。我们的优点是长句,因为句子越长,同样句子组合的可能性就越小,我们就会猜得越准。而句子越短,符合同样首字母的句子越多,提供的选项就越多,用户可能需要在一大堆备选语句中选出想要的那一句,很容易眼花。而大家使用输入法最重要的场景就是微信和QQ聊天。这都是短句霸屏的地方,这也是专门做表情的输入法开始占有不错市场份额的一个主要原因。
所以,即使不被取消,输入法项目用这个姿势来做应该也没有什么卵用。
只不过觉得,最后连屁都没有放一个出来,有些太憋。