
2016年2月,波士顿,29岁的尤雨溪著手在Patreon连蕊茶平台开办帐号。接着,他敦促Vue.js(以下简称Vue)使用者冠名Vue全面开放源码。尤雨溪挚友郭达峰立即积极响应,采用其子公司开放源码基金,向Vue提供更多了历时6个月、每星期3000英镑的支持。尤雨溪的月收入很快达到4500英镑,但依然不到任职Meteor子公司时月薪的一半。
2014年10月,Meteor应邀尤雨溪到矽谷撷取他的个人作品Vue,随即便应邀尤雨溪加入子公司。“Meteor是第一个用JavaScript做全栈的子公司,概念很全面性,彼时JavaScript自然生态正在npm带动下加速爆发。”不想再在Google做颗连轧的尤雨溪谢绝应邀,已经开始在波士顿远距为Meteor组织工作。
尤雨溪愿意从Google离任,更多是为了问世于2014年2月的Vue能在著眼做构架的Meteor子公司得到更好地发展。Vue是建立界面的JavaScript构架,也是创建白眉林Web应用的构架。网络UI雕塑家要想让他们设计的网页生动活泼起来,就需要学JavaScript程式设计,Vue提供更多的JavaScript构架,能帮助没经过太多程式设计训练的UI雕塑家,加速接受并理解规范的程式设计经营理念,减少下层程式设计的组织工作效率。
刚到Meteor,尤雨溪就提议Meteor亲吻npm自然闭环,“把整个构架改造成一个能直接采用npm自然生态的包。”彼时Meteor他们有一套包信息系统,与npm并不相容。Meteor认为尤雨溪的提议是一次成本极高的解构,风险太大,没接纳。直到而后尤雨溪的提议被市场证明,Meteor才已经开始亲吻npm,但无计可施。
对尤雨溪来说,在Meteor组织工作的这一年,Vue重构顺利,他也对后端构架的构架有了他们的经营理念。但Meteor却是个顽固协同发展的构架,后端、后端、网络设备甚至资料库都要特别选定。“选定资料库这一点极大限制了它作为一个全栈构架的通则,把他们的市场占有率填充得非常小,是个杀手锏!”尤雨溪在Meteor没技术重大决策定价权。而后,Meteor竟选择下注Facebook的React,而不是尤雨溪的Vue。
判断出Meteor构架没前程,尤雨溪一下子失去了动力。“我做的这些事也不能让Meteor死而复生,还不如请辞,兼职去做Vue。”“我宁可欢乐地组织工作12个月,也不愿不欢乐地赚11个月的低薪,然后休1个月假,贪心欢乐。”2016年2月尤雨溪毅然决然从Meteor离职,已经开始凭少击众之力挑战Facebook的React、Google的Angular。本篇挤到2021年,Vue在全球最差Web后端构架中排名第二,成为GitHub上最畅销的项目之一。

尤雨溪一直认真阅读GitHub上对Vue提交的Pull Requests(PR),以此判断提交PR的使用者对Vue的理解,如果这个使用者所发的PR和尤雨溪的想法重合两三次,尤雨溪就会应邀他加入Vue开放源码团队。GitHub不仅是尤雨溪找使用者的地方,还是尤雨溪找团队的地方。那些在GitHub上活跃的Vue成员不一定非要写代码以及做技术上的贡献。“发现问题、回答问题、帮助社区新人上手或修改文档等,都是非常有价值的贡献。”Vue团队成员因迫于生活压力或技术兴趣转移等因素离开,也很正常。“一个开放源码社区想要有活力地延续下去,就要不断发掘、吸纳新鲜血液,更要给新人成长空间。”“开放源码的活力就在于每个参与者都在真正自主地做事,大家都希望项目变得更好。”
Vue问世在Google
2013年,纽约,Google Creative Lab。Google很多项目在这里实验、问世。尤雨溪在用Google的Web后端构架Angular 1(现在叫 AngularJS)实现各种新奇、非传统的交互创意。他一边加速完成创意总监交派的组织工作,一边从雕塑家角度简化AngularJS,就此埋下一颗颗替代AngularJS的种子。

时间倒回2012年,Facebook的一位团队负责人在网上看到尤雨溪用JavaScript在Web实现Clear App滑动操作的视频,立即应邀尤雨溪到Facebook面试。此时Facebook对Web的兴趣比App大,认为使用者在移动端会延续PC端的网络采用习惯,更多地采用手机浏览器,而非App。尤雨溪能在浏览器复刻App效果,很合Facebook胃口。
四、五轮面试后,一位华裔工程师面试尤雨溪,他问“JavaScript原型链是什么?”尤雨溪完全回答不上来。“之前只学了实现目标任务的技术,并没对JavaScript进行系统学习。”从Facebook败下阵来,尤雨溪重新啃JavaScript教材。“把JavaScript语言的每个细节都过了一遍。之后,别人再问,JavaScript是怎么回事?我总能说得头头是道。”
几个月后,当尤雨溪正为硕士毕业后的组织工作着落发愁时,意外收到了Google Creative Lab猎头的邮件,问他有没兴趣聊聊?尤雨溪彼时就兴奋地回邮件说好!电话即刻响起,猎头在电话那边说明项目后,没提面试的事,直接问尤雨溪是否有兴趣加入。Google Creative Lab每年招5个应届生:项目经理、文案、平面设计、动画设计、交互技术各一人,组成The Five团队,尤雨溪负责交互技术。此刻的尤雨溪感到了天生我才必有用:“程序员最讲究的就是作品,光说没用,代码要拿出来溜溜!所以现在程序员都得有他们的GitHub。”
兴奋的尤雨溪赶紧通知远在中国的爸爸,他们被Google录取了。尤雨溪爸爸却纳闷了:儿子,一个艺术生,怎么能去Google?但他还是非常、非常地高兴!
Google Creative Lab是个非常有意思的地方,这里以做创意类的东西为主,延续了Google早期奔放的做事风格。“不少搞技术的都是创意领域的精英,拿过很多大奖。”Creative Lab组织工作节奏非常快,创意总监出一个想法,俩小时后,平面雕塑家就做出一个组织工作流程,紧接着就需要尤雨溪当天把原型在Web上实现。“哇!这么酷的东西,居然让我来做!”Google Creative Lab 80%~90%的项目都是保密的,是Google的内部产品,属于团队内部探索。“一个产品现在是这个样子,5年后和10年后它可以变成什么样?10年后的交互还是不是这个形态”
组织工作之余,尤雨溪已经开始开发他们的“玩具构架”Seed。Google的组织工作内容偏重开发速度,而尤雨溪想沉淀一些更工程化的技术能力,另外,每次都靠作品获得机会的尤雨溪单纯觉得“要有作品可以开放源码,作品才是成就感。”Seed便是Vue的雏形。
创意行业,雕塑家非常看重技术人员还原设计稿意图的能力,要求技术人员首先能很好地理解设计意图,其次要有审美能力。尤雨溪在团队的头衔叫Creative Technologist,负责把创意转换成看得见、摸得着,能够交互的程序。Google看重尤雨溪用技术手段将创意展现出来的能力和细节方面的执行力,在Google,像尤雨溪这样的人不多。
但尤雨溪在Google Creative Lab做了两年多就离开了,他不想总在不同的项目间跳来跳去。“在这里,我们做了好多内部原型,用来反馈各种各样的创意想法。一般1~2周做完,先是内部讨论,觉得这东西有意思,然后把狂放的想法中比较实际的东西提取出来,交给产品团队。产品团队看到我们的东西通常会说:‘很棒,不过有点太酷了,我们可以把里面的一些东西搬到现实的产品中来。’然后就没下文了。”

尤雨溪渴望做出来的东西能传达到使用者手里,更想看到它能在世界上产生些影响。当然,现在Google的产品中,有些能看到当年他们所做东西的影子,但这个反馈周期太长了
尤雨溪离开Google没立刻告诉爸爸,他怕爸爸担心他的未来兼职做Vue,尤雨溪又瞒了爸爸一年……
被爸爸逼到失去学习热情
最小玩家尤雨溪躲在老家旁边的网吧玩《红色警戒》。爸爸冲进来,揪着耳朵把他拎回家!
1987年,尤雨溪出生在无锡一户注重教育的家庭,爸爸是公务员,妈妈在大学教书,而后去了银行。上小学时,按照惯例,10月及以后出生的适龄儿童要等下一年才入学,而尤雨溪的爸爸没这么做,让尤雨溪提前一年上了小学。
小学的尤雨溪,虽有一台486,但并不用它学程式设计,而是经常缠着表哥帮他装游戏,一次,看到表哥在家里玩《无悔的十字军战士》,感觉很酷,就让表哥也帮他装一个。但他们的486只有4MB内存,没法装。而后表哥帮他升级了8MB内存条,才装上了他心爱的游戏,尤雨溪因此超级崇拜表哥。尤雨溪经常去家旁边的网吧玩,一来二去,跟网吧老板混熟了,人少时,老板免费让他玩。慢慢地,网吧为大众接受,尤雨溪再去网吧,家里人也就不管他了。

彼时奥数风潮正兴,小学快毕业时,为稳妥进入当地最好的初中,对数学没太大兴趣的尤雨溪参加了奥数比赛并且拿到了奖。爸爸兑现奥数拿奖承诺,在小学升初中的暑假,奖励了尤雨溪一台奔腾II,尤雨溪非常开心,终于可以玩《帝国时代》了!游戏之余,尤雨溪已经开始用Windows自带的画图工具,在电脑上画画,积攒了30多幅画作。这是尤雨溪最早的作品。
大桥中学一直是无锡最好的民办初中,师资力量很强。在这里的三年是尤雨溪学生时代压力最大的时期。“学校课程排得非常满,早上6点就要吃早饭准备上学。”班里竞争激烈,全班40个学生,尤雨溪成绩一直是中上游水平。“考进前10名就算很好的了。”
尤雨溪爸爸人大毕业,考过托福,但专业所限没能出国,出于这份执念,从初一已经开始,爸爸就一直逼尤雨溪背单词。尤雨溪在校学习强度本来就很大,双重压力之下,尤雨溪失去了学习的热情,可他还是很听话,一切尽力为之。
申请到美国本科“全奖”
周末,上海到无锡回家的火车上,尤雨溪还在背《新概念英语》。到家,爸爸会抽查,背不出来就要挨骂,尤雨溪因此恨过爸爸。《新概念英语》从第三册起难度陡然增加,需理解文章逻辑才容易背诵。背完《新概念英语》第四册后,尤雨溪英语水平到达了新高度。平时英语课不太认真,考试同样能拿高分,到此尤雨溪又已经开始感谢爸爸逼了他们一把。
2002年,复旦附中还在面向全国招生,1000多人参考,招50名外地学生。“大我一岁的挚友先考进了复旦附中。他将这个消息告诉了我。”“可想而知,信息差对一个人的影响有多大。如果彼时不知道外地生能考复旦附中,我就错过了一次重要的机会。”
在复旦附中的三年,尤雨溪过得很开心,没初中那么大压力,有时下午四点多就放学了,尤雨溪就会和几个同学去网吧打游戏。复旦附中有各种社团,是国外通识教育的氛围。“学校生活开销也不大,食堂的伙食很便宜,偶尔会租一些漫画、小说来看,玩游戏会花一点钱。”
复旦附中一位学长被哈佛录取,触动尤雨溪已经开始申请美国本科,但时间有些晚了。彼时国内无法考SAT,要到香港去考,可尤雨溪还要上课,根本来不及安排去香港,更别说备考了。因此,尤雨溪考了托福,却因没请中介,他们拿托福成绩“裸申”而均以失败告终,这些学校根本不考虑没SAT成绩的学生。尤雨溪也尝试性地申请了哈佛大学,拒绝信寄到了复旦附中门卫,大家看到,以为尤雨溪也被哈佛录取了,尴尬的他,只能告诉大家他们是被拒了。
万般无奈之下,尤雨溪去请教那位考上哈佛的学长,学长告诉他:第二年三月还有一批常规录取。另外,可以多逛逛留学美国本科的交流平台CUUS论坛。在CUUS论坛,尤雨溪了解到美国文理学院(Liberal Arts College)以本科教育为主,规模小而精,顶尖文理学院的学术声誉完全不输常春藤名校。在三月第二次申请后,尤雨溪很快拿到了两三个录取通知书,都有全额奖学金,他选择了离纽约比较近的学校Colgate。
拿到Offer后,尤雨溪就不想国内高考的事了,已经开始在附中混日子。爸爸警告他签证还没下来,如果最后拿不到,高考又考砸了,那就完了。尤雨溪就很不情愿地继续备战高考,结果考上了复旦大学。
让艺术插上技术的翅膀
尤雨溪学会ActionScript 3后,已经开始做带互动的实验性网站。一做就是一个通宵,第二天出去吃个饭,回来睡俩小时继续干。尤雨溪庆幸他们具备这种长时间保持著眼的能力。
2005年,18岁的尤雨溪踏上了美国征程。已在波士顿的表哥开了好几个小时车将他送到学校。尤雨溪完全没想到Colgate在纽约郊区一个几千人的小镇里,虽然像个世外桃源,但没车寸步难行。“本科四年过得比较憋屈。”
学金融,一方面是爸爸的主意;另一方面,“那时计算机专业还没而后这么热门,大部分同学都会选择数学、金融这样的专业,因为这些领域更容易找到H-1B(组织工作签证)的组织工作。”Colgate培养了很多金融领域的人才,每年会有一些金融企业来学校做宣讲招聘。
尤雨溪很早就玩Flash动画制作,还做了一个作品集,他随意把一些作品发到网上的互动设计论坛里,结果被北京一家子公司的创意总监看中,应邀他到北京实习。尤雨溪的作品和作品意识一直是他人生的杠杆,为他创造机会,放大效益。
在Colgate大二快结束时,尤雨溪当面跟爸爸讨论了专业问题,他对金融不感兴趣。尤雨溪要用一年时间在艺术设计方面做出点成绩来,这是他第一次说服爸爸。
北京的半年实习彻底改变了尤雨溪,他决定要做一名雕塑家。再回到Colgate,尤雨溪放弃金融坚定地选择了艺术专业(Studio Art)。遗憾的是Colgate严格说只有一个老师真懂数字艺术,尤雨溪需要他们摸索专业知识。当Flash可以用ActionScript语言写脚本时,尤雨溪已经开始做一些简单的互动,接着尝试实现复杂场景。学到ActionScript 3时,尤雨溪对程式设计就有了些概念。但凡基于实践需要,再难,尤雨溪都会主动去学。
“好在并不是所有类型的程式设计都需要数学功底” ,因为尤雨溪的数学学得不算好,对他感兴趣的方向来说,“程式设计更需要逻辑分析能力”,而他在Colgate逻辑课拿了A+。尤雨溪学程式设计出于视觉驱动,他看到别人做出了一个很酷的东西,就已经开始想,怎么写代码才能做出这种效果?当然也会尝试反向编译别人的源码。GitHub的出现让他十分开心,他天天在上面看别人的源码,看到源码,就能弄明白一个东西是怎么运作的。尤雨溪的程式设计一直是结果导向。
尽管如愿以偿,已经开始数字艺术专业学习,但尤雨溪知道数字艺术专业找不到组织工作,他必须读硕士,将艺术插上技术的翅膀。在四、五个Offer中,尤雨溪选择了Parsons(帕森斯设计学院),因为他还是想留在纽约。Parsons的同学非常跨界,有的同学是组织工作了几年的雕塑家想学程式设计,有的是经验丰富的软件工程师想搞艺术,他们来自不同的国家和地区。纽约是个大熔炉。

硕士阶段没奖学金,“花了家里不少钱。”所以尤雨溪很拼,努力学到了很多东西。“这么多花销,如果再不努力,最后再找不到组织工作,就太说不过去了。”在此期间,尤雨溪不仅学习了openFrameworks、动画算法等技术,还接触到了JavaScript程式设计语言,并在JavaScript这条路上越走越深。
而后的事情大家都知道了,正如文章开头所说,尤雨溪在硕士毕业后,先后任职于Google Creative Lab、Meteor,兼职做Vue后,他逐渐找到了适合他们的组织工作与生活节奏,也将Vue送入了GitHub TOP3 Repo。这一切貌似无从,如同每一次人生选择,之后的发展轨迹便顺理成章一样。尤雨溪本人则认为,时机、坚持、基于使用者去思考,三者缺一不可。

(作者:刘韧谷磊)