关于开源
开源随想
最近无意中发现了一个前端大佬 Anthony Fu 写的一篇文章:开源的心理建设,读后深有同感。
关于开源有趣的一点是 你可能永远不会准备好。你可能会遇到棘手的技术问题,或者需要不断追赶新兴技术的脚步,但除了编码之外,还会有许多其他事情需要你去应对。你要成为 客服 去解答问题;成为 设计师、 作家 去编写一份精美的文档;成为 项目经理 确保项目正常推进;成为 团队领导 来接纳新的贡献者并保持团队的积极性;推广 你的作品;在大会上发表 演讲;等等。这些都是作为开源开发者的「额外影响」,不仅仅是代码,很多其他事情也会随之而来。
从我自身体验来看,的确是这样的。刚开始参与 RapidOCR 维护时,我以为只需要关注 OCR 模型本身即可。但随着社区的逐渐增大,我发现自己逐渐承担起多种角色。
我需要成为“设计师”来设计项目 LOGO 和组织的 LOGO;成为“客服”去解答社区提的需求,对各个地方的需求做分类和汇总,辨别哪些是需要讨论,哪些可以成为需求点,纳入下个版本;也成为“作家”——这倒不意外,毕竟,一个好的项目,总得有份简洁实用的文档。此外,我也要撰写推文来宣传项目,让更多的人知道它。这不仅不是负担,反而让我更全面地理解了项目,而不仅仅是代码逻辑。
不知不觉,我加入开源社区近四年,从开源中受益良多。
起初参与开源项目时,它与我的工作有一些重合。两者形成了互惠、互补的关系。开源的代码经过全球开发者检验和使用,社区伙伴提出的建议,也常常会反哺到工作中的代码。对我来说,开源更像一个实验场——我可以在这里试验一些新的特性。
说到参与开源的动力源泉,我想,它就源于喜欢,仅此而已。
时常有小伙伴问我:“你这么起劲,搞这么多开源项目,挣钱了吗?”
“没有。”我通常如实回答。
开源对我来说,只是一个爱好——自己喜欢做,仅此而已。
这就像有的小伙伴喜欢跑步,喜欢骑行,而我喜欢开源。