这里记录分享下成为TDengine contributor的经历,
两年前在从事物联网相关的开发工作,接触到物联网相关的技术,
自然而然也关注到了TDengine的发展,
从大学学的嵌入式方向到工作后接触到的CAD工程图,FPC/PCB设计,
前端到后端开发,项目管理,Devops,深度学习,大数据等这些相关学习和工作经历,
越来越感受到数据的重要性,
物联网数据随着时间的推移,数据量会越来越大,
传统的数据库对IOT监控数据的处理有些吃力,
接触到TDengine后较为激动,觉得这个产品将会是趋势,
一直想深入了解和学习下这个产品,
在2021年9月22日在TD的物联网大数据技术前沿群中增加了TDengine工作人员小T,
Pick up了一个issues,小T在群里发布了一些适合新手参与TDengine项目的issues,
自己也参与进去了,
从第一次提交到成为contributor有三四个月的时间,
希望看完能让有兴趣的小伙伴早日成为TDengine contributor,(省流密码:拉到最后)
下图是合并成功的时刻(激动)。
第一次正式参与开源项目,对自己pick up的issues有些不太明确,
就去咨询了小T关于issues中的细节,
这次任务的主要内容是修改一些命名不规范或者不统一的变量和方法(看起来还是比较简单的),
当然小T没有回答,自己也没有过多去打扰,
就按照自己的理解尽可能的把此issues涉及到的问题都处理了下,
然后做了编译和测试就提交到自己仓库上了,
之后提交了pr,提交pr后,项目会自动走ci/cd,
对提交的代码做一些编译和测试,这次提交后就经历了漫长的等待,期间由于有新合并的pr,也合并处理了几次。
等ci/cd完成后,就是漫长的等待了,根据提交的pr修改的内容和范围,
需要核心维护人员进行review,都review通过的pr才有机会被合并。
由于修改的地方确实非常的多,审核花了很长很长的时间。
一个多月后自己没有按耐住,还是去问了小T,
得到回复是修改的地方太多,怕引起连锁反应,需要慢慢看一下。
此时小T说,下次有捉虫活动,领一个简单的。
于是开启了新的捉虫任务,当pick up这个问题的时候,
核心维护者在github告诉我,我不能再参加活动了,然后去问小T,也这么说。
这边是pick up了issues,但是没有合并哈,
我在github中跟维护者这样说明,
然后我就争取到了这次pick up的机会,
这次领到的任务是TDengine C语言变量优化相关的,
自己反复看了很多遍内容,
最后根据自己的理解对相关部分做了优化,
由于之前的pr一直没有合并,这边也遇到了相关的问题,
之前fork的代码库是旧版本,自己提交的commit又没有合并,
最后这边重新拉了一遍官网的最新代码,(强)推送到了自己的仓库,
再对对应部分做了修改,再提交PR,之后就跟原来一样走CI/CD。
这次也等了一段时间,后面发现Github出现了Fetch upstream的功能,
非常好用,可以跟官方仓库一键保持同步,这个功能gitee之前就有。
经过再次与小T沟通和反馈,最终成为了contributor。
总结:
1.从简单的issues开始。
2.选自己熟悉的issues。
3.多与客服人员沟通,及时反馈。
希望你也能早日成为contributor,其他项目也可以参考。