致敬尤雨溪,Vue.js 讓我賺到了第一桶金

2021-02-19 前端下午茶

最近這個 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。

也許這就是 Top 程式設計師的成就感吧。致敬尤雨溪,Thank you!

順手點「在看」,今天早下班;轉發加關注,共奔小康路~

❤️ 看完三件事

如果你覺得這篇內容對你挺有啟發,我想邀請你幫我三個小忙:

點個「在看」,讓更多的人也能看到這篇內容(喜歡不點在看,都是耍流氓 -_-)

關注我的博客 https://github.com/SHERlocked93/blog,讓我們成為長期關係

關注公眾號「前端下午茶」,持續為你推送精選好文,也可以加我為好友,隨時聊騷。

相關焦點

  • 尤雨溪在Vue3.0 Beta直播裡聊到了這些…
    前言在 4 月 21 日晚,Vue 作者尤雨溪在嗶哩嗶哩直播分享了Vue.js 3.0 Beta最新進展。以下是直播內容整理1.感興趣的可以查看:https://composition-api.vuejs.org/#summary
  • 尤雨溪:Vue 3 之後會休息一下
    談到目前的工作與生活狀態,尤雨溪表示:「即使我是自由職業者並且在家辦公,我也會每天按照固定的時間表進行工作。在這方面,很慶幸我有孩子,因為每當我不工作時,我都會與家人在一起。另一個重要的事情是,只要有需要,我就會進行長時間的休息,可能持續數周。我非常享受現在的生活狀態,但如果我仍是一家公司的全職員工的話,這可能會很難做到。」事實上,尤雨溪在業餘時間也會像普通年輕人一樣進行適當的娛樂消遣,比如玩玩遊戲,刷刷知乎等。也經常有網友調侃他的知乎號活躍得像一個營銷號……
  • 我發現了 Vue.js 中的性能陷阱
    我們做了一款單頁應用形式的遊戲,到了請求域的時候內存佔用爆表了。雖然遊戲大賽已經結束了,但是我依舊不能釋懷。這個問題一直困擾著我。問題出在 Vue.js 嗎?是 Netlify 嗎?還是因為我們的代碼有缺陷?我必須找出答案。 我內心深處對遊戲的熱愛,讓我一直渴望能自己製作一些電子遊戲。幾個月前我開始將這種夢想變為現實,並第一次參加了全球遊戲大賽(Global Game Jam)。
  • Vue.js系列:生命周期鉤子
    開發人員提供了一個Web開發人員可以在Vue.js應用程式的整個生命周期中使用的各種方法的討論。生命周期鉤子是在Vue對象生命周期的某個階段執行的已定義方法。從初始化開始到它被破壞時,對象都會遵循不同的生命階段。這是一個著名的圖表,表示掛鈎順序。讓我們將代碼添加到鉤子並查看它們如何被解僱的階段。<!
  • Vue.js最佳靜態站點生成器對比
    因此在本文中,我會向大家介紹用於靜態站點生成的四大 Vue.js 框架,並對它們做詳細對比,幫助找到適合你用例的選項。https://nuxtjs.org/名單上的第一個是 Nuxt.js,這是一個基於 Vue.js 構建的開源高級框架。Nuxt.js 會抽象出客戶端 - 伺服器分發細節,從而簡化 Web 開發工作。
  • Vue超好玩的新特性:在CSS中使用JS變量
    前言以前在翻譯《Vue 3:2020年中狀態更新》的時候,文中曾經提到過尤雨溪希望7月中旬發布RC版(候選版本),8月初發布3.0正式版。不過現在已經八月初了怎麼還是沒發布呢?這個月初到底幾號才算是"初"呢?
  • Vue.js深入學習
    vue.jsv-cloak:解決網速慢閃爍問題 ,不會替換掉標籤裡面的內容v-text:會替換掉標籤裡面的內容:原樣輸出v-html:會解析標籤v-bind:綁定屬性的指令,縮寫.參數1,指令的名稱,定義的時候,指令的前面不需要加V-前綴,用的時候才加3.參數2,是一個對象,這個對象身上有一些指令相關的函數,這些函數在特定的階段執行相關的操作Vue.directive('focus',{bind:function(el){函數中第一個參數永遠是el,表示被綁定了指令的那個元素,是一個原生的js
  • 使用 Vue.js 和 Semantic-UI 做一個簡單的願望清單
    2020剛開始的時候,我曾覺得冬天無比漫長,似乎沒有盡頭。到了六月的時候,才發覺時間過得比想像更快。而現在,2020年已經過去了,想來總覺得有些恍惚,那些時間那些歲月到底是怎麼流逝的呢?那麼,我們到底是如何穿過暴風雨的呢?只有在這麼一個時刻,才能明白,讓我們穿越暴風雨的,不過是每一天的平凡生活。
  • 前端娛樂圈大瓜:前端人因為 Vue3 的 Ref-sugar 提案打起來了!
    :  截止到我寫這篇文章時,能看到在 github 上大家對這個提案的態度:其中最具爭議的就是 ref 的語法糖問題;  為了將問題更加聚焦,前幾天,尤大大將這個提案的兩個內容,分離到了各自的 PR 中,setup 是 RFC 227(https://github.com/vuejs/rfcs/pull/227),ref sugar 是 RFC 228(https://github.com/vuejs/rfcs/
  • Vue.js開發的4個基本ES2015特性 - 智能甄選
    在本文中,我將向您展示您將每天與Vue一起使用的四個ES2015功能。我將提供每個解釋和簡要示例。箭頭功能模板文字模塊解構和擴展語法1.箭頭功能Arrow函數是一種聲明JavaScript函數的新方法。它們提供了更短的語法,但與其他方式的常規JavaScript函數也不同。
  • 10個簡單的技巧讓你的 vue.js 代碼更優雅 - 酷扯兒
    這就是我的文章布局。構建插槽與構建組件沒有什麼不同。本質上,插槽是具有超強功能的組件,讓我們細分一下上面的布局,組件的外觀如下:<!vue中的$props、$attrs和$listeners(可用來二次封裝組件)$props:當前組件接收到的 props 對象。Vue 實例代理了對其 props 對象屬性的訪問。假如有個input輸入框。我們有很多的原生屬性,比如:name、placeholder、disabled等等。
  • 一張圖教你快速玩轉vue-cli3
    添加瀏覽器支持如何配置scss/stylus共享全局變量如何整合eleemntUI等第三方框架並實現按需引入配置單/多頁面如何配置自定義環境變量如何在vue.config.js最後可以在vue.config.js做webpack自定義配置2.添加瀏覽器支持browserslist我們可以通過package.json 文件裡的 browserslist欄位或一個單獨的 .browserslistrc
  • 使用electron+vue開發一個跨平臺todolist(便籤)桌面應用
    開發桌面應用,對於一個web開發者來說,html+javascript+css的開發體驗讓我非常舒服。之前我一直簡單的以為electron只是張網頁加個殼,和那些號稱跨平臺的運行在手機上的webapp是一個套路。直到我真的需要開發一個跨平臺桌面應用的時候,我又認真的嘗試了一下electron,我開始意識到:這才是我理想中的跨平臺桌面應用開發的最終形態,它簡直太優秀了。
  • 準備將您的Vue應用遷移到Vue 3
    在這篇文章中,我想分享一下我最近試用Vue 3 Beta版本的經驗,特別是有關您計劃將現有Vue 2應用程式遷移到升級版本Vue 3時可能要注意的一些注意事項!下面的列表將幫助您邁向Vue 3最佳實踐,並避免在Vue 2中遷移到Vue 3時可能遇到麻煩的一些用例。讓我們繼續!
  • vuex實現預熱篇-vue插件開發
    #泛舟計劃·讓知識更好看#1.如何引用vue插件呢?Vue.use(Vuex)2.use做了什麼事呢?args.unshift(this);// 如果你傳入的是對象,裡面有install方法,我們就執行這個方法if (typeof plugin.install === 'function') { plugin.install.apply(plugin, args); } elseif (typeof plugin === 'function') {// 如果你傳入的不是個對象是函數,那麼我就直接執行函數
  • 三毛錢一本的《少林寺》電影連環畫,讓我賺到了「人生第一桶金」
    因為看電影,小時候多認識了不少課本上還沒有學到的字,這倒是看電影享受之外的意外收穫了。那時候的電影,現在還能記得名字。劉曉慶主演的《神秘的大佛》,李連杰主演的《少林寺》,還有《地道戰》、《地雷戰》、《難忘的戰鬥》(因為壞人用秤砣打傷了警衛員,孩子們又稱這部電影為《難忘的秤砣》)。
  • 三毛錢一本的《少林寺》電影版連環畫,讓我賺到了「人生第一桶金」
    因為看電影,小時候多認識了不少課本上還沒有學到的字,這倒是看電影享受之外的意外收穫了。 那時候的電影,現在還能記得名字。 之所以能夠記住《少林寺》,是因為它讓我賺到了人生的「第一桶金」。
  • 如何創建vue項目並使用element框架中的el-select
    1、在電腦硬碟上,找到一個位置,新建一個文件夾wmn;滑鼠右鍵選擇Git Bash Here,並在Git窗口輸入cnpm install --global vue-cli命令:cnpm install --global vue-cli
  • 前端高效開發必備的 js 庫梳理
    本文轉載自【微信公眾號:趣談前端,ID:beautifulFront】經微信公眾號授權轉載,如需轉載與原文作者聯繫之前有很多人問學好前端需要學習哪些 js 庫, 主流框架應該學 vue 還是 react ? 針對這些問題, 筆者來說說自己的看法和學習總結.
  • 藍媒科技控股積電共享充電寶,幫你賺到共享充電寶第一桶金
    藍媒科技控股積電共享充電寶,幫你賺到共享充電寶第一桶金。藍媒科技控股積電共享充電寶,可以說是目前國內共享充電寶項目中值得推薦的一個加盟項目,事實上,通過共享這樣的方式,不但能夠帶領大家賺到共享充電寶的第一桶金,而且還能夠保證後期是可持續發展的,不會出現任何的瓶頸和困難,這就是大品牌的承諾和保證。所以如果大家想要進行項目創業的話,都可以優先選擇該項目。