阿崔的开源日记 - 起航

3,967 阅读5分钟

源起

哈喽,各位同学们好,这是我开的新坑:阿崔的开源日记, 来记录后面做开源的点点滴滴

先和大家聊聊为什么要开这个新坑吧 我早些年的时候就给自己定了未来工作和生活的方式: 自由独立 <->做开源&卖课

通过做开源吸收和沉淀技术,把这个作为输入,然后沉淀的技术做成课程,这个是作为输出。然后想办法把课程卖出去,来养活自己。这样形成一个正向循环。两个事都是我特别喜欢做的事,也都是可以持续做下去的事,而讲课和写代码这个也是作为我自己独特的知识经验组合, 这也是我自己的核心竞争力

而现在,卖课这件事已经做到了, 今年我离职,做自由职业,通过卖自己的小课已经足够养活自己了(至少目前几个月是没问题,哈哈哈), 写这篇文章的时候已经有 300 位同学上车我的课程。 所以现在是时候开始冲击实现第二个目标了。

vue3 源码实战课,带你手把手的实现一个 mini-vue3 ,基于 4.5k star 的 mini-vue 库而来

写出来是为了更好的思考

那做就做呗你,写出来干嘛呢?,对于我自己来讲“写出来是为了更好的思考”, 我可以记录我做开源的思考过程,我每一步的动作和决策,这个当后面在回顾复盘的时候会相当的奇妙,我可以基于我之前的思考做进一步的思考。所以我决定记录下来整个做开源的过程。

而为什么我又选择把日记公开呢? 其实这里会涉及到一个学习方法我把它称为: 催牛皮学习法,把你要做的事情公开与众的话,那么你成功率就会更大一些。(因为做不到的话 会很丢人 哈哈哈)所以把这件事公开也是为了可以让自己更好的坚持下去。当然如果我懈怠了, 你们一定要多加嘲讽我!!! (这都会变成我的动力,哈哈哈哈哈)

如果回到开源的初心的话,本身这个日记就是开源,我希望我做的这个事可以帮助到你们,据我所知很多同学都有一个做开源的梦,但是就是不知道如何开始,如何做。 那好 , 那我就给大家打个头阵!

Tasking

按照我自己做事的习惯我会先对要做的事情做Tasking(任务拆分),然后再一一实现。那首先要做的第一件事是“决定参加哪个开源项目”, 这个是第一个要考虑好的问题。我先说我的结论:参与到 vitest 项目中。为什么呢? 我来聊聊我的决策。

  1. 在我的计划里 5 月份会推出前端测试课,所以我对测试框架的实现非常感兴趣,而 vitest 作为一个现代的测试框架,是非常用必要研究和学习的,而且也会助力我的前端测试课。
  2. 在我的技术生涯里面还没有做过测试框架, 编程这么多年我写过游戏,写过重度前端项目(lower code),写过组件库。但是还没有接触过测试框架,所以做测试框架算是在我的学习区。

所以基于这两个原因,我初步定位于 vitest 这个测试框架, 那目标是什么? 当然不止做到 Contributor, 一定是 core team 。

当然了,选择哪一个开源项目来做是比较关键的,而且这个也是因人而异的,你需要基于你自己的水平和情况来选择一个适合你自己的项目

下一步做什么

继续做 Tasking, 下面的这些动作是比较通用的

  1. 把 vitest 的整体结构也就是 happy path 搞明白。

    先有个大概的认知就可以,需要知道项目是如何组织的, 有几个 package ,每一个 package 是做了什么事,而框架的核心实现模型是什么样子,这些都需要好好花时间来搞明白

  2. 去 issues 区看看有没有简单的 issue 可以解决

    去找一些简单的 issue 来带着问题去思考,然后解决一些简单的 issue 来获得正向反馈,这个也是非常重要的一点。先做起来。do it

  3. 看已经被解决的 issue

    这一步主要是了解团队的做事方式以及解决issue 的流程,当我去解决的一个 issue 的时候按照团队的流程去办事,会让别人感觉我很专业。

    同时也可以了解到项目的上下文,也会帮助我更好的融入进去

  4. 关注 vitest 的官方 twitter 以及团队中的各个成员的 twitter

    这样可以让我快速的了解到项目的最新动态,同时我也可以和他们互动,先混个脸熟哈哈。

和我一起做开源

如果你也有一颗做开源的心并且有一定的行动力,那么我们可以一起。

当然在写这篇文章的时候只有我一个人,我还没有创建讨论小组等等之类的 所以你可以选择加我的vx: cuixr1314 (备注:和阿崔一起做开源) Uploading file...64zsp

同时关注我的公众号:“崔学社” 当然我自己还是一名技术 up 主,后面我也会开直播,把开源过程直播出来。

最后,加油 祝你也祝我。