9 月 19 日,VUE 终于迎来了 。
众所周知,VUE 的作者尤雨溪是一个资深的二次元爱好者。自 2014 年以来,VUE 的每个重要版本都会被赋予一个神秘代号。从 VUE 1.0 的 “Evangelion”(新世纪福音战士),再到 VUE 2.0 的 “Ghost in the Shell”(攻壳机动队),如今的 VUE 3.0 则被尤雨溪命名为 “One Piece” (海贼王)—— 这部漫画史上销量最高、覆盖范围最广的少年漫画,似乎也暗示着 VUE 已经从一个小众群体中的宝藏项目成长为如今风靡全球的世界三大前端框架之一。
而就在 VUE 3 正式发布前不久,尤雨溪接受了一家外媒的采访,透露了自己目前的工作和生活状态,同时解答了一些前端开发者非常关注的问题。
全职开源作者的生活
自 2015 年以来,尤雨溪就以自由职业者的状态进行远程办公,主要经济收入来源为众筹网站 Patreon 上来自社会各界的资助。从他个人的社交媒体我们可以得知,尤雨溪目前与家人定居在美国,同时也会经常回国参与国内的学术研讨会以及进行一些 VUE 的布道工作。
谈到目前的工作与生活状态,尤雨溪表示:“即使我是自由职业者并且在家办公,我也会每天按照固定的时间表进行工作。在这方面,很庆幸我有孩子,因为每当我不工作时,我都会与家人在一起。另一个重要的事情是,只要有需要,我就会进行长时间的休息,可能持续数周。我非常享受现在的生活状态,但如果我仍是一家公司的全职员工的话,这可能会很难做到。”
事实上,尤雨溪在业余时间也会像普通年轻人一样进行适当的娱乐消遣,比如玩玩游戏,刷刷知乎等。也经常有网友调侃他的知乎号活跃得像一个营销号……
现在 VUE 3 已经正式发布,刚刚完成了一个具有里程碑意义的大版本更新,尤雨溪也表示接下来自己可能会休息一段时间:“ Vue 3.1也已经有了一些想法。但是接下来我肯定会休息一下,充电很重要!”
很多网友曾疑惑开源项目作者如何养活自己。事实上,像尤雨溪这样的知名开源项目作者通常不乏企业级用户的支持。据尤雨溪透露,自己在家中全职开发 VUE 的初期,每月就能从众筹网站上获得至少 1 万美元的资助。如今 VUE 的全球用户量已经突破百万,企业级用户也不在少数,尤雨溪的年收入也达到了百万以上。
财富自由、名满天下、家庭和睦,可谓是真正的人生赢家。
非科班程序员能否成功?
在现实中,很多开发者并不是计算机相关专业科班出身,自学成才的开发者不在少数。那么是不是只有那些精通数学、算法和数据结构的人才能成为优秀的程序员?还是说只要能写出平平无奇但却易于理解的代码就可以呢?
尤雨溪认为,使用 VUE 或者大部分前端框架对于数学和算法的要求不算太高(至少与数据库相比),“我觉得自己在算法或者数据结构方面的确不强,虽然提升这方面肯定对开发者有所帮助。但以我目前从事的工作角度来看,想要管理好前端框架项目,最重要的还是了解用户的需求,设计出合理的 API,建立并长期维护项目社区。”
而关于“平平无奇却易于理解的代码”,尤雨溪认为开发者编写出这样的代码并没有什么不好,相反他不太认同这句话中所包含的贬义。“实际上要编写出这样的代码往往还需要积累一定的经验才行。我认为判断代码的好坏在于代码的执行效率是否够高,而不是它的实现思路有多么惊奇。”
对于非科班出身的程序员,尤雨溪的看法是 “没有接受专业计算机教育的人当然也能从事软件开发,不过每一位开发者都应该重视计算机基础知识,巩固基础总不会错。” 他结合自己的入行经验,给新人提出了一些建议:“先开始做事,哪怕做得不好。在做的过程中,我们会找到自己的不足之处,然后针对这些不足在下一阶段不断努力地提升自己。”
事实上,尤雨溪自己也算是个半路出家的程序员。在大学期间他学习的专业是室内艺术和艺术史,当时的他还不知道自己毕业之后要做什么。于是他去读了美术设计和技术的硕士,希望多掌握一些技能,将来找工作的时候可以更容易一些。正是在读硕士期间,他偶然接触到了 JavaScript ,从此被这门编程语言深深吸引,开启了自己的前端生涯。
作为非计算机专业科班出身的程序员,除了不断学习巩固专业基础知识以外,尤雨溪还曾指出学习英语相当重要:“不仅英语差会成为开发者提升的瓶颈,英语好还能成为优势,因为学习效率会比别人高。像我这样半路出家自学的人,只能靠英语了。”
我目前是在职前端开发,如果你现在也想学习前端开发技术,在入门学习前端的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,你都可以申请加入我的前端学习交流3000人裙:前面:851 中间:231 最后:348。里面聚集了一些正在自学前端的初学者裙文件里面也有我做前端技术这段时间整理的一些前端学习手册,前端面试题,前端开发工具,PDF文档书籍教程,需要的话都可以自行来获取下载。
TypeScript 不会取代 JS
在这次采访中,记者还与尤雨溪讨论了一些前端开发领域的发展趋势问题。近年来,前端开发领域兴起借助 Nuxt.js 和 JAMstack 这类技术,帮助开发者将精力专注于前端,并使用 minimal / JS / Baas 来搭建后端的“无后端”开发方法。
尤雨溪认为这种技术更像是在产品的推动下催生的技术,在一些后端逻辑相对简单的项目中,开发者就可以利用这些技术把更多的精力放在前端交互中。这虽然不是什么灵丹妙药,但确实非常适合某些类别的应用程序开发。
另一个前端开发的趋势则是微软在 2012 年推出的 TypeScript 语言,包括最新的 VUE 3 也基于 TypeScript 进行了重构。近年来,网上出现了不少 “ TypeScript 将要取代 JavaScript ” 的言论。对此,尤雨溪认为 TypeScript 不会取代 JS,前者只是 JS 的一个超集。“我个人认为,JS 与 TS 并行发展才是最合理的未来方向,而且这一点在可预见的未来不会改变。”