三咲智子 Kevin Deng

三咲智子 Kevin Deng

Gen Z | Full Stack Developer 🏳️‍🌈
github
twitter
twitter

2022,我的開源探索

2022 年三月份,我寫過一篇自我介紹流水帳文章,總結了我在大學之前的技術經歷。如果還沒看過,先去閱讀上一篇文章再繼續看吧~

現在是時候來講講我與開源的故事流水帳了 😎!

初來乍到 2020 年 18 歲 大一#

回到之前文章中提到的時間線 ——2020 年,疫情元年,也正是我高考的那年。進入大學之後,比起高中就算是自由了。有更多的時間探索和捣鼓自己真正想做的事情了。

2020 年 9 月,Vue 發布了 3.0 正式版。看到 Vue 的 Composition API 非常戳我,也對 Vue Composition API 相關生態十分關注。在寫自己的項目的時候,也嘗試去使它。

之後使用到了 VueUse 這個庫。但是 VueUse 還不是特別成熟,在使用的時候發現了一些小問題,當即就去 GitHub 發了個 PR,後對 VueUse 這個項目比較感興趣,就陸續提了 6 個 PR。這件事算是我對開源社區感興趣的契機。跟 Anthony Fu 也混了個臉熟 😇。

總的來說,在 2020 年只是對開源抱有一些興趣,但是大部分時間還是繼續在維護自己的項目。項目中遇到問題,去 GitHub 提 issue 和 PR 已經比較熟練了🤣。

小試牛刀 2021 年 19 歲 大二#

距 Vue 3 發布正式版已經過去了一年,然而我自己的項目還在使用 Vue 2,一直想遷移到 Vue 3。但奈何當時 Vue 2 + Element UI 遷移到 Vue 3 + Element Plus 真的非常繁瑣,所以沒辦法還是繼續用 Vue 2。

後來 Anthony Fu 發了個推文,說他做了個 unplugin-vue2-script-setup 可以在 Vue 2 中使用 <script setup> 語法。有了這個插件,總算是有現在 Vue 2.7 的影子了。我在那條推文下面問了下,能不能支持 ref sugar take 2(也就是現在的 Reactivity Transform),得到回覆說等這個提案穩定了再做(結果現在都 2023 了,Vue 2.7 都發布了,Reactivity Transform 還沒穩定 😅)。我當時感覺到這個提案遙遙無期(果然吧 🤓),就自己提了個 PR 把這個功能做了。後來 Anthony 發了個推特 at 了我,當時感覺贼有成就感。

這是我第一次在開源中得到認可 🤩。

Element Plus#

這年暑假,最終還是把其中一個項目升級到了 Vue 3。自然也把 Element UI 升級到了 Element Plus。在遷移到 Element Plus 的時候,也發現了它的一些小問題,就發了個 issue。當時 Element Plus 的維護者鼓勵我自己嘗試去修一修,我就發了個 PR 給修了。

由於有之前的貢獻開源的經歷,當時也有興趣找維護者問了問:我能不能參與維護這個庫。得到肯定的答復之後,就被拉過去當維護者了,正式走上開源這條不歸路了😆!(其實也是寫業務寫麻了 🤫)

當時進 Element Plus 團隊的時候,Element Plus 還在 1.x beta 版,還存在一些 Bug 和遠古時期的代碼。在閱讀代碼的時,也一邊瘋狂發 PR —— 發起了一個重構計劃。把 TypeScript 改為嚴格模式、重構了構建流程等等。因為之前都是自己一個人維護項目的,加入 Element Plus 團隊之後,社區的小夥伴也非常熱心,手把手帶我了解了 GitHub 的工作流和開源項目的協作是怎麼樣的。

以現在的視角,重新回過頭看這段經歷。這是我開源的第一站,第一次與一群志同道合的夥伴討論項目和代碼。這段時間,把幾乎所有的業餘時間都花在維護 Element Plus 上面,一上完課就跑回宿舍看 PR 🤖。

這段時間在開源社區學到了非常多的東西,是我飛速成長的時期。因為 Element Plus 是一套 Vue 的 UI 庫,整天和 Vue 打交道,我對 Vue 也有了更深的了解。除此之外,還有很多都是自己不懂的,把 Rollup、unplugin、esbuild、ESM 與 Common JS 等都研究了一遍。

很多項目也是在維護 Element Plus 的期間誕生和認識的。unplugin-vue 是改 Element Plus 的構建工具的時候而寫的 Rollup 插件。unplugin-vue-macros 是去年為 Element Plus 遷移 <script setup> 語法而做的工具。還把 unplugin-vue-componentsunplugin-auto-import 寫到了 Element Plus 的官方文檔中。

總之,2021 年是我正式參與開源的第一年。4 個多月的時間裡提了 200 多個 PR,為 Vue 周邊的生態做了一些小貢獻,期間也為 Vue 3 提了我的第一個 PR 😎。

漸入佳境 2022 年 20 歲 大三#

如果說 2021 是一個好的開始,那 2022 年對我來說絕對是意義非凡的一年。

這年二月,隨著過完了春節,Vue 在農曆初七把 Vue 3 切換成了默認的版本,Element Plus 也同時發布了第一個正式版。然而在背後,春節期間我在幫忙完善最後的一些細節與文檔,在除夕夜還在忙著發版 🤣。

這年為 Vite 貢獻了我的第一個 PR。在為 Element Plus 遷移到 <script setup> 語法的時候,為 Vue 提了我的第一個 RFC。非常榮幸地收到了尤雨溪 Evan You 兩個 Twitter 帳號的關注。

在三月份,在 Element Plus 的小夥伴的幫助下,我開通了 GitHub Sponsor。收到了來自開源社區的第一桶金 🥳!目前已經收到 49 位夥伴的支持!在這非常感謝大家對我的幫助和認可 ❤️。

在 2021 年其實有想過去哔哩哔哩直播寫代碼,但是只是說說而已。但今年終於付出行動了。契機是 Anthony Fu 去直播了,我覺得挺好玩的。時不時在 B 站直播寫代碼或聊天,也認識了不少的朋友!

image

image
卷起來了

下半年,我也逐漸把視野放到了 Element Plus 以外的項目上,自己瞎捣鼓寫一些玩具,同時也維護著自己的一些庫,反正就是到處修修補補蹭一蹭 PR 吧 🤪。本年我花最多時間的個人項目是 Vue Macros。通過這個項目,解鎖了一些奇怪的用 Vue 的方式 ——Vue 探索版 (不是)。通過這個項目,我參加了 Nuxt Nation 2022。受 Haoqun Jiang 的邀請,也參與了 Vue Conf China 2022,這也是我第一次參與到 Vue 社區的演講中。但是遺憾的是,由於眾所周知的原因,到目前為止都還沒有參與過線下的聚會。

image
Vue Conf China 2022

本年還錄製了《開源面對面》的播客節目,這也是我第一次參與錄製博客。因為是第一次,所以可能會比較局促一點 🫣,還請見諒。在錄製完成後,還為《開源面對面》製作了一個官網

本年最大成就是加入 Vue 團隊了!有段時間放了很多精力在 Vue 倉庫,在為 Vue 做了好些個貢獻後,同時在 Anthony Fu 的提名推薦下,我成為了 Vue 團隊的一員。這是對我極大的認可和鼓勵。作為 Vue 團隊最年輕的成員,目前還比較菜🥬,我要學習的東西還非常多。對 Vue 的理解可能也不是那麼的深刻,所以需要繼續向前輩們學習 🫡。

當然在開源社區有快樂的事情,自然也有鬧心的事情 —— 某些不可理喻的 issue。好在參與開源社區比較久了,我已經自帶免疫了。碰到這種 issue 我會純粹當作一個熱鬧來看,發到網上當一樂子。詳見 Twitter #迷惑 issue 大賞

本年上半年參與最多的社區項目是 Element Plus,前文已介紹,不多贅述。下半年則是 Elk 鹿鳴,基於 Vue 技術棧開發的一個 Web 版的 Mastodon 客戶端。最初是 Anthony Fu 創立了這個項目,後面我自己有段時間感覺無聊,就把我也邀請進來了。之後有段時間經常與團隊的 PatakDaniel Roe 溝通,以至於過成了歐洲時間 GMT+1 了 🤣。通過 Elk 鹿鳴,讓更多 Vue 社區的小夥伴參與進來了!我學習到了各種各樣的技術棧:Nuxt、PWA、Tauri 等等。

sxzz_contributions (2)

鳴謝 蹭熱度#

不過這年收穫最大的還是認識了非常多來自開源社區的朋友們 ——Anthony FuShenQingchuanwebfansplzHaoqun JiangPatakDaniel RoeJohnson ChuLittleSound 等等!很難想象在前兩年遙不可及的大佬們,現在可以時常進行討論 (談笑風生!🤪)

今年在諸多朋友的幫助下,獲得了許多的成就。可謂是成就感滿滿的一年。在此我想向 Evan You 和 Patak 等我的贊助者和朋友們致謝。多虧了 Patak 和 Evan You 贊助了我,有了他們的認可後收到了更多的贊助,對我意義非凡。

👋 未來,2023#

🚩 目標#

  • 博客 & 文章

    希望在 2023 年把我年久失修、已經長草了的博客翻新一下。因為博客太舊,就也沒有動力寫文章了。平時多去寫點總結性的文章。避免明年的年終總結再寫個流水帳 🥲。其實我不怎麼善於表達,所以多寫點文章練練手可能會改善一些。(願你博客半生,歸來時仍是 GitHub Gist 🤣

  • 做出一個自己滿意的開源項目

    希望自己能做出一個規模大一些、令自己滿意的開源項目 🤔。

  • 線下 Conf

    也由於眾所周知的原因,2023 年有更多機會參與海外的演講。所以希望能多參與一些線下的演講。希望能在 Vue.js Amsterdam 2023 見到各位。👋

抓到我#

更多我的日常,可以通過以下網站關注我 💖

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。