「回顾2022,展望2023,我正在参加2022年终总结征文大赛活动」

我们好,我是 sun0day,最近正好看到掘金在征文 2022 年终总结,不爱写文章的我也来凑凑热闹,总结下自己这小半年参加开源的历程。

缘起

作业越久,越觉得编程无趣,我开端审视自己:当初为什么选择程序员这行,这条路我还愿意走多远?回想自己的程序员生涯,印象比较深的有几件事:刚学 C++ 时分写的第一个程序杨辉三角,做课设闭关 4 天用 C++ 憋出一个 dos 文件管理东西,为了学分用 python 写了个抢课脚本,局域网玩 cs 开外挂被封 ip 一气之下用 python 写了 arp 攻击东西反向封了对方服务器,第一份实习作业才智到各种技能框架、流程、规范,第一次阅历对自己作业价值认可的晋升……我信任很多人选择当程序员的初心都是因为酷爱,我也是,我对代码的酷爱来自于创造和改变,用自己编写的代码去一点点影响世界。

可能是待在舒适圈太久,也可能是厌倦了千人一面写代码做产品的模式,当初自己身上那股爱折腾的劲已经消失殆尽,为了卷而写代码,好生无趣。其实我一向都有做开源的想法,可是一向没有付诸实践,有各式各样的托言,不提。本年年中,我拒绝了一些有吸引力的 offer,在机缘巧合下去了一家外企,为的便是可以有更多时刻折腾开源。尽管外企作业没有想象中的轻松,可是简单、透明、高效的交流方式十分对我的脾气,作业之余的时刻也满足我做自己想做的事了。

第一篇 Story

从上中学开端,我就十分惧怕写作文,语文考试最后的作文题真是要了命了,根本编不出来。没想到当上程序员后还得写博客、写文档什么的,不同的是怕写作文是因为编不出来,对博客和文档是怕麻烦,平常尽管也有记录学习笔记的习惯,但博客和文档对程序员而言总归是绕不过的必修课。之前偶然心血来潮也会顺手写写,在知乎也建了个专栏 技能0到1 ,我计划参加开源一方面是为了能重拾对代码的酷爱,另外一方面也是为了可以应战自己,突破现在的舒适圈,基于这个目的,我测验着去 hackernoon 上用英文写文章,正好那段时刻在折腾 Go,所以向 hackernoon 投了篇 《ES7-style Async/Await Implementation in Golang》 并宣布(有一说一,hackernoon 的写作体验不如我大掘金 :( ),相应地还写了个 Go async 库,可能是因为文章的引荐,这个库得了 17 颗 star,尽管不多,但对刚开端测验开源的我也是种鼓舞。

第一个 PR

决定参加开源后,逛 github 成了我每天的欢喜时光,每天看看社区我们伙都在干什么,时不时去提些 issue 或者解答些问题。一次偶然的时机,我在作业中发现了 umijs 的一个 mock 文件热更新的 bug,所以测验向 umijs 提了我人生的第一个开源 PR,很开心,这个 PR 被 @sorrycc 大佬 merge 了。提 PR 真的是一件十分风趣的事,尤其是给抢手的项目提 PR。试想,当你的 PR 被兼并了,你的代码可能会跑在成千上万开发者电脑或者服务器上,这种感觉十分酷。问题是,怎样能给开源项目提更多 PR,作业中用到的库大多是老练的库,很难发现问题,所以我去 github 上抢手或小众的开源项目看 issue,找一些力所能及的问题去解决,然后看源码 debug,最后提 PR。

第一个 Member

刚开端找开源项目提 PR 时,我像个无头苍蝇,只要是技能栈相近,不管用没用过,只要项目某个 issue 写的明晰,我就去翻源码 debug,然后提 PR,期间假如遇到定位到问题,但由于对项目不熟悉一时不知怎样修正的情况我就会去和 maintainer 交流并询问他们的意见。提 PR 的另一个美好之处在于你会受到来自社区大佬们的肯定,这儿顺手贴几张图

2022 下半年参与开源总结 - 成为两个高星项目 member

2022 下半年参与开源总结 - 成为两个高星项目 member

2022 下半年参与开源总结 - 成为两个高星项目 member

2022 下半年参与开源总结 - 成为两个高星项目 member

提的 PR 被兼并尽管令人欢喜,可是我发现时刻久了,漫无目的找项目提交 PR 就像吃了份快餐只能满足一时,所以我计划将精力 focus 在一两个优异的项目上,我选择了 vueuse 和 nextui,原因是 vueuse 满足活泼,nextui 满足酷炫。就这样为两个库提交代码一段时刻,没想到后面收到了 @antfu 大佬和 nextui 作者的邀请,加入了 vueuse team 和 nextui team,感觉就像中了彩票令我欢喜若狂。

2022 下半年参与开源总结 - 成为两个高星项目 member

写在最后

从 7.13 给 umijs 提交第一个 PR 开端到现在,利用业余时刻,我总共给开源社区提了 49 个 PR,已兼并的 34 个,待兼并的 7 个,触及的项目有 vite、vueuse、vitest、pino、trpc、nextui 等,幸运地加入两个项目的 team,并在 hackernoon 宣布两篇博客。这其中有努力也有运气,开阔了视野,也感受到了久别的趣味,更重要的是重塑了自己对程序员这个身份的认知。后续的规划是持续给 vueuse 和 nextui 贡献代码,可是会把精力集中在 vite 和学习 rust 上,我觉得 rust 尽管上手难,但十分风趣,最近正在阅历初学 rust 的阵痛期,写了个 贪吃蛇机器人,写的磕磕绊绊,但好歹还算顺利。篇幅所限,这儿不再打开共享我开源的一些经验,后续会专门写篇文章介绍,希望可以协助到那些想参加开源但又不知道怎样开端的小伙伴们。欢迎我们关注我 sun0day,一起交流成长。

PR 一时爽,一向 PR 一向爽