摘录一下我之前写的一篇文章:
https://imzlp.com/posts/8890/个人开发者参与开源的开始,应该都是从玩具代码起步的,觉得自己做了个有点用的东西,就放到 Github 上,如果恰好被人看到,觉得有用,可能就会在自己的项目中尝试使用。如果开发者能坚持对项目进行迭代、更新,会积累起一些真正使用它到实际项目中的用户。这是个人开源项目的正常发展过程,不同于大公司内部开源的项目,项目本身在内部就已经经历了很多的迭代之后,在某个时间点开源出来,而且有大厂的背书,对项目会产生很强大的推广作用,但是个人开发者只能靠混迹相关的技术社区,靠使用的人口口相传了,传播速度和广度则比较受限。
在我看来,如果以功利的心态去看待开源是肯定做不好的( KPI 项目),基本开源行为是没什么实际收益的,好好做开源要耗费的精力十分巨大,大多数项目都是靠情怀支撑的。
而且会因为项目慢慢用的人多了,对项目的功能、适用度、稳定性都有要求,可能改动了一点点代码就会对一波不同情况的用户产生影响,更新起来就不能那么随心所欲,提交之前还是要尽可能地经历一些测试流程的,是比较耗费精力的,测试的时间可能比开发的时间还要长,不过我觉得在这个阶段,开源项目才真正摆脱了只是在 Github 存一下代码的状态,才真正对其他的用户产生了价值。