过去几年,数据库可信生态的构建情况到底如何?标准到底是什么?技术层面取得了哪些进展?这些进展又将如何与产业做结合?各行业在实践层面的最佳方法论到底是什么?
有时候,你所做的只是在简化原有流程。但只要能在特定领域做到顶尖水平,你就能在人们心目中占据一席之地。
Next.js 是一个 React 框架,它支持服务端渲染和静态网站生成。从 2016 年开源到现在,Next.js 在 GitHub 上已经拥有超 10 万 star,下载量也突破了 2 亿,项目进展非常快。而且有趣的是,无论 JavaScript 前端世界如何变化,Next.js 和 React 却始终能屹立不倒,似乎已经成了前端开发者们的永恒归属地。
Next.js 的创造者 Guillermo Rauch,也是商业公司 Vercel 的创始人兼 CEO。Vercel 与 Next.js 社区关系密切,并且彼此同步增长,特别是在 2020 年品牌重塑之后,这家公司的年度经常性收入得到了 50 倍的增长。作为一家初创公司,估值更是达到 10 亿美元。
Next.js 是 Web 开发者的福音。对于独立开发者来说,创建大型、可扩展、快速的混合网站从未如此简单,跟大公司们干的一样。
现年 30 岁的 Guillermo Rauch 本人更是一个传奇,他来自阿根廷,小时候通过阅读软件手册学习英语,克服了语言障碍。十一岁时,他自学了 Web 开发,并作为自由开发者远程承担 Javascript 项目。这项工作最终将他带到了旧金山,让 Guillermo 在高中就能靠自己的能力移居美国,开始了在软件界的打拼生活。在硅谷这个环境下,做创业的事情对 Guillermo 来说更是如鱼得水,用他的话来形容就是:获得其他初创企业、你的同行、开发者社区以及风投的认可“有点容易”。
Guillermo 在阿根廷的郊区长大,他的父亲是工业工程师,很早就意识到自己的行业已经过时,计算机才是未来。于是他很早就有了一台电脑,以便学习编程相关知识,知识技能掌握相对熟练后,便开始从事一些咨询开发工作。
几年后,16 岁的 Guillermo 成为了 MooTools JavaScript 框架的核心开发人员。MooTools 是为中级到高级 JavaScript 开发人员设计的 JavaScript 实用程序集合。
当年有一家瑞士初创公司决定将所有前端应用程序代码都押在 MooTools 上,他们邀请了 Guillermo 到公司里一起完成该项目,这也是 Guillermo 第一次出国。当该公司 CEO 见到 Guillermo 本人后,震惊得无以复加:“这孩子是不是迷路了?真的是我们新来的工程师吗?”
在这期间,Guillermo 也被一些伟大的公司、伟大的工程所吸引,投入到工程项目中的精力越来越多,而学习的时间则越来越少,最终选择了高中辍学。
虽然没有进过大学,但他有自己的一套学习方法:“我几乎所有的东西都是从互联网上学到的。英语学习就是一个很好的例子。我阅读网上找到的大量文档,这些文档通常只有英文,通过这种方法,自学英语。而编程,只要使用正确的工具,就能得到相应的反馈。”
退学后,他创建了一个非常流行的名为 Socket.IO 的框架,是 GitHub 上最受欢迎的 JavaScript 项目之一,具有多种不同编程语言的框架实现,微软在发明 Office 365 和 Live 时更是选择使用该框架来构建实时后端。
2012 年,Guillermo 出版了“Smashing Node.js”一书,这本书很快成为了 Node.js 的畅销书。成名后,他受邀在世界各地的会议上发表了数十个关于 JavaScript 和实时网络的演讲,例如 O'Reilly OSCON、QCon 和 NDC。同时他还热衷于开源工作,并且是斯坦福大学组织和开创的开源工程课程导师,为来自哈佛大学、麻省理工学院、卡内基梅隆大学、宾夕法尼亚大学、哥伦比亚大学等高校的学生教授自己的经验。
在 2015 年 11 月创立 Vercel 之前,Guillermo 曾担任 LearnBoost 和 Cloudup 的首席技术官兼联合创始人,这两家公司于 2013 年被 Automattic 收购。
大约 18 岁的时候,Guillermo 向美国移民局提出申请并成功获批,对此,Guillermo 在今年的一期播客中说道:“那是 12 多年前的事了,嘿,我有一些对国家有价值的技能,我认为这让我显得比较特别。”
八年前,Guillermo 联合 Tony Kovanen 等人创立了 Vercel。
那时候的主流观点都觉得 JavaScript 框架永远是来了又去、新方案每周都在涌现,而真正能留下足迹的几乎没有。Guillermo 表示自己记得当时遇到过一家非常成功的数据公司的创始人,他评论说“我一路从 Java、C++学到数据库技术,但在尝试了 JavaScript 之后,我发现它连高校课程都没有。这种语言这么不稳定,我怎么可能把它用在持久项目上?”
那时候网上还有另一种说法,认为 React 的前置使用步骤太繁复了。“当时我主要面对两大难题,第一就是应用的启动过程太困难,其二是框架组装太困难,那时候就是这个样子。另外,基础设施的部署也在困扰着我,特别是零停机部署,那更是难上加难。”
于是,Next.js 出现了,其最大的亮点就在于,“能够非常快速地部署好前端项目,而且在这方面几乎无可匹敌。”
基于 Next.js,Guillermo 建立了一家名叫 Vercel 的企业,目标之一也是降低进入门槛。“我认为首先开发人员的需求量很大。但他们可以比现在更有效率,因为他们不必重新发明所有这些定制的基础设施。Vercel 的目标之一是让网络更快、更好、更具协作性。所以今天,如果你是一名前端开发人员,你可能不再需要花费一周的时间来配置你的开发环境、安装所有的工具链......”
Vercel 为开发人员提供了用于编码和启动 Web 应用程序的基本开发工作流程,希望让基础设施的自动化顺理成章。它围绕多项重新定义 Web 应用程序的新兴技术构建,包括 Jamstack、边缘计算和无服务器技术。Jamstack 是一种架构,旨在使用无服务器使 Web 更快、更安全且更易于扩展。无服务器设计允许开发人员运行和构建 Web 应用程序,而无需管理底层服务器。
标准的 Web 开发流程包括研究、设计、创建内容、开发、Beta 测试、审查、质量保证、发布和维护。部署需要大约 12 到 28 周(对于大型站点甚至更长),具体取决于 Web 应用程序和正在进行的维护。
每个网站都包含前端和后端。前端是直接与用户交互并在用户单击或在网站上发出任何请求后利用后端获取数据的部分。后端处理核心数据、逻辑、API 和数据库架构。Vercel 的产品为前端提供了核心基础设施,但它也提供了后端所需的元素。
“基本从根本上讲,我们所做的一切 Web 开发,实际上就是把种种事物串连在一起,把大量 HTML 片段拼凑起来。当时我们的关注重点,是在 React 之上构建一个服务器渲染层,而且 Next 的灵感源自 PHP。PHP 的语法也相当符合直观认知,能够将逻辑嵌入到 HTML 模板当中。凭借这种简单的设计,PHP 实现了很多令人惊讶的功能。默认情况下,它甚至可以流式传输 HTML。而且因为每个请求都拥有自己的 arena,所以这实际是种无服务器架构。”
Guillermo 对开发者体验也一直十分关注。在 Next.js 当中,这种关注主要体现在服务端渲染上。
Guillermo 曾对 JavaScript 生态系统的发展方向比较失望,其中存在不少倒退和功能缺失。“我还记得 React 应用刚刚面世时,他们会给应用生成一个整体包。就是把应用的 JS 和 CSS 统一打包起来。我当时就在想,这种方法怎么跟原生移动应用竞争呢?每次访问网站,都要下载整个应用,这也太扯了。人家原生移动应用可只需要下载一次。”
也就是说原生移动应用对于软件包体量会有更大的宽容度,毕竟无论是 200 MB、100 MB 还是 50 MB 的应用,用户都只需要下载一次,所以区别并不太大。
而 Web 这边就不存在这种硬性下载和安装的过程,这也是其优势所在。为了适应现实情况,Web 应用开始朝着为迷你化的方向发展。现在 Web 应用只须下载小小几 MB 的包就能渲染一个页面。而这根本上也可以说是为最终用户提供良好的性能感受。
这也是 Next.js 成功的原因所在——重视服务端渲染的开发体验,也重视每段路由代码的具体开发体验。
Guillermo Rauch 还让 Vercel 的产品从使用服务器转向无服务器计算,以消除复杂性并简化开发人员的工作。
“无服务器已经证明它是未来的运营模型,像 Next.js 这样的框架为开发人员提供了无缝利用无服务器原语的工具。”
Vercel 利用无服务器、边缘计算和 Next.js 在部署代码后为最终用户提供快速性能,允许开发者在全球范围内部署网站。假设你在编写 Next.js 应用,希望通过渲染提供一项服务,完成之后开始部署。之前的部署方式就是把应用部署到世界上某个位置的服务器,然后由开发者设定可扩展性、多可用区部署、零停机时间发布、缓存等各种属性。但 Vercel 强调使用无服务器架构,所以在大多数情况下,开发者无需承担任何额外操作,Vercel 已经帮助用户解决冗余、弹性等常规问题。
投研机构指出,Vercel 的相邻市场,如无服务器市场,预计到 2028 年也将达到 360 亿美元。随着 Vercel 的框架越来越受欢迎,Vercel 作为事实上的工具的地位也会提高。
Vercel 将多门学科纳入 Web 流程的举措,让更多人可以成为前端开发,也许一位设计师也能逐渐成为程序员。Guillermo 指出,Vercel 正在“吸引超级创意的新一代开发人员。如果我们最终将‘前端开发人员’重命名为‘产品开发人员’,我不会感到惊讶。”
Vercel 于 2021 年 10 月以 15 亿美元的估值筹集了 1.5 亿美元,由 GGV Capital 领投。本月 Guillermo 披露了 Vercel 的收入情况,虽然 2020 年 ARR(年度经常性收入)为 100 万美元,但是却一直在稳步增长:2021 年,500 万美元;2022 年,2400 万美元;2023 年中,超过 5000 万......员工也在两年间从 40 人发展到 400 人,并服务了沃尔玛、Tiktok 等多家企业。
作为一个自学成才的软件工程师,将一个开源免费工具变成一个快速增长的 SaaS 业务,Guillermo 是一个特殊的存在。而在前端主流框架的创建者中,这样的神话却不止一个,这也让人疑惑,为什么不需要大学教育或专门的计算机教育背景,他们却也能在前端闯出一片天地?这个领域特殊性在哪里?亲爱的读者,您们怎么看呢?欢迎留言评论~
参考链接:
https://www.youtube.com/watch?v=UhctkmjffsU
https://twitter.com/swyx/status/1667995063216148480
https://flagsmith.com/podcast/vercel-interview-guillermo-rauch/
领取专属 10元无门槛券
私享最新 技术干货