左手代码,右手开源,开源路上的一份子

| 作者:鲁飞(沈唁)

| 责编:沈于蓝

| 编辑:姚王薇

| 设计:朱亿钦

我与开源相识在 2017 年,在 2017 年 11 月 23 日创建了一个 GitHub 账号,ID是 sy-records,当时只是为了基于Github Pages和Hexo模板来创建一个博客来记录一些学习记录等内容。

相对于来说,全面开花的时间应该是从 2018 年,以及在机缘巧合之下加入 Swoole 开发组开始。

往下聊故事之前,先来做一个自我介绍:

关于我

鲁飞,网名沈唁,Simps 和 PHPMQTT 的创始人,GitHub:@sy-records ,Docsify、Hyperf、PHP、Swoole、ThinkPHP等开源项目开发组成员,阿里云专家博主,中国开源码力榜 Top 15,《开源指北》编写成员 ,开源社成员。

WordPress 插件开发者,为 WordPress 提供 10+ 开源插件。

接触开源之路

最开始注册 GitHub 之后,并没有太多的去使用,除了 Hexo 之外,可能第一个 fork的项目是 git-tips ,用来学习更多的 Git 相关命令。

平时也会因为工作原因,把部分功能API接口调用封装成了sdk,提交到了https://packagist.org/(这里有重复造轮子的嫌疑,逃~)

18 年年底时,遇到了一个可以近距离接近大佬的机会,入职识沃科技(Swoole 商业化公司)。

入职后主要负责和参与开发了一些商业项目,但也为 Swoole 这个开源项目做了一些事情:社区运营、文档重构、Library的开发和维护等。

特别值得一提就是文档重构了,不仅从旧版本的UI换为了新形式的前端实现,而且还将大部分的错误内容进行了修正,补充了更多的示例代码。

旧版本文档
新版本文档

截止本篇文章发布前,Swoole 中文新文档有 `1058 `次 commits,其中包含了我的`713`次 commits。

在重构 Swoole 文档时,还遇到了一些问题,新版文档的选型是使用了 docsify 这个项目,而那个时候的 docsify 还有些历史遗留的搜索问题,例如:

 1. 不能搜索表格中的内容

 2. 搜索内容点击跳转位置错误

 3. 不能搜索列表的内容

4.  还有其他的问题...

那么遇到问题怎么办呢?摆烂吗?那肯定不可能的,docsify 是一个开源项目,那就可以通过提PR的方式来解决问题。

我先提交 issue,看开发者是否有时间回复和进行修复,在得到了回复之后,我就抽空去提交了PR进行修复,也是比较顺利的被合并进了主干。

与此往复,我在给 docsify 提交了许多的PR后,就被邀请加入了开发组,现在我已经是 docsify 的 `owner` 了。

文档重构之后还相当于在另外一方面为 docsify 做了推广,目前 Hyperf、OpenMix 、apolloconfig 等组织都使用了 docsify 来构建文档。

同时 docsify 报名参与了由思否组织的「SFOSSP - 思否开源项目支持计划」,也在 2020年度获得了OSC中国开源项目评选「最佳人气项目」。

在使用中去参与开源

有了使用才能够发现一个项目存在更深层的问题,如果有能力去修复这个bug,在提交PR后被合并,那么恭喜你,你已经是这个项目的`Contributor`了。

我为 WordPress 开发了一个使用腾讯云存储COS作为附件存储的插件,在使用时就发现了`cos-php-sdk-v5`的一些问题,在修复的过程中,还接触到了 COS PHP SDK 的开发团队

参与开源也不仅限于修复bug,我还提了一些优化的PR、文档的修复。在自己力所能及的范围内能够为一个项目做出贡献,都是参与开源的一种方式。

热爱是开始,也是动力

作为一名 PHP 工程师,我会把自己封装的 sdk 提交到 packagist ,供其他人去使用;

PHPMQTT 这个项目就是我这两年在工作之余一直在维护的 PHP library,这是一个适用于 PHP 的 MQTT 协议解析和协程客户端。

同时也是首个支持 MQTT `5.0` 协议的 PHP library。

> 以及首个支持 MQTT Over Websocket 的 PHP library,还未发布,但是已经实现了。

PHPMQTT 也在 2021 年度OSC中国开源项目评选中获得「最受欢迎项目」

作为 Swoole 开发组成员,我也会注意周边生态中的一些问题,基本上我为 mixphp、easyswoole、imi、swoft 等项目都提交过PR。

Laravel 发起了一个`octane`项目,去兼容使用 Swoole,我也在 GitHub watch 了该项目,在有用户遇到 Swoole 相关的问题时,我能第一时间去提交PR去解决或者回复 issue 。

持续贡献

这几年我也是一直在坚持进行持续贡献,主要活跃在 docsify 、swoole-src 、typecho、hyperf 、laravel/octane 、simps/mqtt 等项目中,还有周边的sdk或者活动组织提供一些基础支持能力。

除非有无法抗拒的原因或者 GitHub 权限的问题,比如下图中2021年度的贡献图,有几个空白格,但是我的 GItHub 登录状态下是绿色的。

每天多多少少的提交一点代码,然后就慢慢的养成习惯并喜欢了这种坚持,现在一天不提交代码都觉得少了点什么。

写在最后

开源这件事,只要接触了就感觉离不开它了,同样在我们的生活中无处不在的开源软件,手机、App等都使用了一些开源软件...

而且在开源社区中可以遇到在工作中无法接触到的一些人和事,和开源社区交互、分享越多,就有更多的可能性,让你有机会成为一个人才济济、活力四射的社区的一分子,你可以从中汲取灵感,并结识志同道合的人。

期待有更多的小伙伴能加入到开源中!

你可能感兴趣的:(左手代码,右手开源,开源路上的一份子)