致敬尤雨溪,Vue.js 让我赚到了第一桶金
最近这个 Vue.js 纪录片在前端圈广为传播,相信不少人已经看过了。第一次看编程领域的纪录片,感觉还挺新鲜的。这部 30 分钟左右的纪录片制作精良,主角是 Vue.js 作者尤雨溪,还穿插采访了框架的几个核心贡献者和早期用户。
之前看过一次尤雨溪介绍 Vue.js 的视频,他英文之流利,表达之清晰,给我留下了深刻的印象。加上这次的纪录片,确实值得给他点个赞。
我算是比较早接触 Vue.js 这个框架(库)的一批人了。过去十年,前端领域发展日新月异,各种框架和库层出不穷。从最早使用的 jQuery,到后来的 Ext JS,还有 Backbone,Knockout 等,都尝试过。这些框架都各有其优缺点,解决问题的同时也带来了不少麻烦。
由于平时比较关注技术动态,一个偶然的机会接触到了 Vue.js,当是还是刚发布不久的 1.0 版本,用的人也不多。我可以说是一见钟情,这就是我要找的框架:轻量、简洁、渐进式,没有过多的预设,自己对代码和页面元素有比较大的控制权,写起来比较有信心,出了问题也容易定位。
当时已经被 Ext JS 和 Sencha 折磨了很长时间了,体积臃肿不说,还充满了各种预设,庞大的 Class 模块系统,完全基于 JavaScript 的声明式组件定义和布局,定制化起来特别费劲。我仿佛抓住了救命稻草,看到了希望的曙光。经过短时间的学习上手,我就决定把工作项目完全迁移到 Vue.js。说是迁移,其实就是完全重写。出乎意料的是,重写的工作量并不是很大,因为用 Vue 写界面真的是太顺手了,主要工作量基本是在调布局,写 CSS。这些都是原生技术,跟框架关系不大。
当然,几乎在同时期也出现了其他的优秀框架,没错,就是 Angular 和 React。出于技术人的自觉,我也去或多或少地了解了它们的原理和用法。这里不评价哪个框架最好,因为永远有语言和框架之争,没必要。适合项目和团队的,就是最好的。其实很多技术思想在各个框架里都有体现,框架之间有时也互相借鉴,不断完善。我们作为开发者,最重要的不是去争论哪个框架最好,而是搞懂框架背后的技术理念,应用到实际工作中,提升开发效率和代码质量。
除了在工作项目里使用 Vue,业余时间自己也用它开发了一些项目,甚至有几个是给别人做的商业项目,获得了一些报酬。这是我第一次通过业余时间获得的一笔可观收入,或许可以说是副业上的第一桶金吧。什么是第一生产力?这就是。
再说回纪录片。从这个短片里,我们可以看出成功的开源项目和成功的技术生涯所具备的一些要素,或者是对广大程序员的一些启发。
第一,idea 很重要。Vue.js 的诞生,源于作者尤雨溪在项目开发过程中对现有框架和工具的不满。他为了解决自己面临的问题,才开发出了 Vue。我们在工作中也会碰到各种各样的困难和问题,很多人都是直接向有经验的人请教,或者网上找一些现成的解决方案。过后并没有思考问题的根源在哪,有没有更好的方法和工具?最多就是做个笔记,下次碰到同样的问题轻车熟路。如果我们多一点思考,多一些想法和创意,是不是也可以造出自己的工具来呢?
第二,语言表达的助力。作为在美国求学和工作的中国人,尤雨溪的语言能力是很大的优势。视频里可以看到他的英语非常流利,发音也很纯正。同时汉语表达能力肯定也是差不了的。无论是在技术大会上,还是写书面文档,都可以看出他的语言表达能力是很不错的。这在一定程度上助推了 Vue.js,特别是在中国。可能很多人觉得这没什么,不就是在美国多待了几年嘛,英语说得溜很正常。但我要说的是,大部分搞技术的,其实表达能力比较欠缺,包括我自己。可能技术人更擅长跟机器打交道,人与人之间的交流表达反而有不少障碍。所以为了在工作中更好地与别人交流沟通,或者分享自己的技术经验、观点,提高自己的表达能力是必不可少的。
第三,充分利用技术社区的力量。尤雨溪本身不是计算机科班出身,从室内艺术专业跨界到计算机编程,还做出如此优异的成果,除了他自身的优秀能力外,另一个原因就是借助了技术社区的力量。他在 Google 和 Meteor 的工作机会就来自于自己的开源项目。Vue.js 后来的推广和发展,也离不开社区的支持,比如从著名的 PHP 框架 Laravel 社区获得了大量用户。包括后来国内大厂对 Vue 的引进,以及 Element UI 等衍生框架,让 Vue.js 技术生态日渐繁荣。所以,积极参与开源项目,获得的不仅仅是技术的提升,还有可能获得职业生涯上的一些机会。
纪录片最后, Evan You 说的的那几句话,让我感触特别深。
I created this thing. I share with people hoping that it could make people's life easier, and people coming up to me personally saying thank you for achieving that. Right? That kind of completes the loop。
Evan You
也许这就是 Top 程序员的成就感吧。致敬尤雨溪,Thank you!
关注公众号:1024译站,回复“纪录片”观看完整视频。

致敬尤雨溪,Vue.js 让我赚到了第一桶金的更多相关文章
- Vue作者尤雨溪:以匠人的态度不断打磨完善Vue (图灵访谈)
访谈对象: 尤雨溪,Vue.js 创作者,Vue Technology创始人,致力于Vue的研究开发. 访谈内容: 你为何选择从事前端方面的工作? 其实,我本科读的是艺术史,研究生阶段学习Design ...
- [译] 尤雨溪:Vue 3.0 计划
[译] 尤雨溪:Vue 3.0 计划 原文:Plans for the Next Iteration of Vue.js作者:Evan You 发表时间:Sep 30, 2018译者:西楼听雨 发表时 ...
- React 和 Vue 到底谁更牛?听听尤雨溪怎么说
React 和 Vue 到底谁更牛?听听尤雨溪怎么说 知乎上近日有人发起了一个 “react 是不是比 vue 牛皮,为什么?” 的问题,再度引发一场关于前端框架谁更牛的口水战,评论里可以说是撕得不可 ...
- 专访Vue作者尤雨溪:Vue CLI 3.0重构的原因
1.为什么要对 Vue CLI 进行大规模修改? 尤雨溪认为旧版本的 Vue CLI 本质上只是从 GitHub 拉取模版,这种拉模版的方式有几个问题: (1) 在单个模版里面同时支持太多选项会导致模 ...
- 听说尤雨溪在开发vue4.0?是谁煽动了前端圈的焦虑情绪
导火索因P图而起 今天前端圈里被一张P图搞得好热闹,最初只是QQ群里一个冒名尤雨溪的前端网友发了一句调侃的话,原话截图如下: 看完觉得好搞笑,说尤雨溪在开发vue4.0,有谁学不动了,就给他发10块钱 ...
- 尤雨溪在直播中讲到的Vue3.0 Beta的那些特性,快记笔记了
前言 在那天风雨交加的夜晚,Vue的创作者尤雨溪尤大大在b站直播分享了Vue.js 3.0 Beta最新进展.我对直播的内容进行了一下整理.整整用了三天的空余时间赶上了 1. 全新文档RFCs Vue ...
- 尤雨溪:TypeScript不会取代JavaScript
来源 |evrone.com译者 | 核子可乐策划 | 蔡芳芳 近日,Evrone 与 Vue.js 的作者尤雨溪进行了一次访谈,了解他对于无后端与全栈方法.以及 Vue.js 适用场景的看法,还有他 ...
- 尤雨溪的vue怎么学,应该从vue-cli开始,为什么?
带手机验证码登陆, 带全套购物车系统 带数据库 前后端分离开发 带定位用户功能 数据库代码为本地制作好了 带支付宝支付系统 带django开发服务器接口教程 地址: https://www.dua ...
- 蒲公英 · JELLY技术周刊 Vol.12 尤雨溪新作 Vite, 你会支持么?
「蒲公英」期刊,每周更新,我们专注于挖掘「基础技术.工程化.跨端框架技术.图形编程.服务端开发.桌面开发.人工智能」等多个大方向的业界热点,并加以专业的解读:不仅如此,我们还精选凹凸技术文章,向大家呈 ...
随机推荐
- Android开发学习1----AndroidStudio的安装、创建第一个Android Studio文件、Android Studio界面介绍和HelloWord!
移动开发的工具有很多:Android Studio,eclipse,Hbuilder等,其中,现如今最火的开发工具是Android Studio,Android Studio是谷歌自己推出的一款集成开 ...
- 量化投资_TB交易开拓者A函数和Q函数常见组合应用
1 在交易开拓者当中,关于交易的做单方式一般分为:图表函数和A函数两类. 两类的主要区别为:如果采用图表函数的话,所有的交易内容都是以图表上面的信号为准,当前仓位运行的实际状态是没有的,但是可以显示交 ...
- bootstrap的button按钮点击之后会有蓝色边框怎么解决?
.btn:focus,.btn:active:focus, .btn.active:focus,.btn.focus, .btn:active.focus,.btn.active.focus { ou ...
- 机器学习算法之——KNN、Kmeans
一.Kmeans算法 kmeans算法又名k均值算法.其算法思想大致为:先从样本集中随机选取 kk 个样本作为簇中心,并计算所有样本与这 kk 个“簇中心”的距离,对于每一个样本,将其划分到与其距离最 ...
- es 查询分词字段为空的数据
{ "query": { "bool" : { "filter" : { "script" : { "scri ...
- Django常见错误总结
1 ImportError: No module named 'MySQLdb' 解决方法: . 安装pymysql模块 . 在app的__init__.py文件中写入以下内容 import pymy ...
- GitHub之初始化
1.github上新建repository. 2.本地 mkdir git-init-demo. 3.cd git-init-demo. 4.git clone https://github.com/ ...
- Mr.Yu
在linux下搭建Git服务器 git服务器环境 服务器 CentOS7 + git(version 1.8.3.1)客户端 Windows10 + git(version 2.16.0.window ...
- FPGA基础架构总结
1.为什么FPGA的整体逻辑的速度有限制? 与ASIC相比较,AS指的是(application specific)专用集成应用,而FPGA是可编程逻辑,在实现的过程中,AS是直接用最基础的逻辑门实现 ...
- Linux考试试题
mkdir -p /data/oldboy touch lodboy.txt echo "inet addr:10.0.0.8 Bcast:10.0.0.255 Mask:255.255. ...