起因是开源项目 Docz 作者 Pedro 在 repo 中发表的一篇短文章,他在其中描述了自己在维护开源项目过程中心理状态的变化。
最初为了开发 Docz,他可以提前 3 小时起床,推迟 3 小时睡觉,可以说是全力以赴地创建了这个项目。Docz 也给 Pedro 生活带来了变化,带来了许多机会,这是一段美好的时光。但随着项目的发展,需求日渐增多。Pedro 既要忙工作,还要抽时间维护自己的开源项目,最后的结果却是损害了健康和工作。为此,他在“保持开源项目活跃度”和“保持身体健康”之间选择了后者。
对此,antirez 作为一个对维护不同规模开源项目 (Redis, Hping, Jim Tcl, Visitors web analyzer) 都有不少经验的资深开源项目作者,他认为这种情况的解决方案十分简单:
- “只做自己想做的 (just do what you want)”
当身处一个成功的开源项目中时,许多项目创建者可能会觉得处理问题的选择只有两种极端:
- 不做任何事
- 满足别人的一切要求
但 antirez 认为,开源项目作者可以继续做自己想做的事,挑出自己想解决、想回复的问题来处理,以及实现想增加的功能,等等。此外,他还建议开源项目作者每天抽出固定的时间用在维护开源项目上,在这段时间里只做自己喜欢做的事,忽略所有其他的事情。如果看到 PR/issue 与自己觉得正确的事情完全一致,那就格外留意和及时处理。其他的可以稍微降低优先级。
antirez 表示自己独立创造 Redis 就是怀着这样的心态,而这个孤军奋战而来的作品在市场上击败了许多数百名开发者打造的产品。他认为,项目作者自己觉得值得投资的东西,一定有一些优点。所以,只要做你想做的事就行。
同时,他还提出了几个要点:
- 不要因为别人向你索取东西而没给予付出,就认为他们犯了某种错误或是在滥用“权力”。事实上,他们可以提出任何要求,不过作为项目作者自然也可以忽略这些要求。
- 不要因为软件是免费的而陷入对软件质量不负责任的陷阱:只做自己想做的事,并且认真完成工作,以及形成良好的文档。
- 当被他人攻击时,平静地回答自己的想法,不要陷入争论。
- 在参与开源过程中结交好朋友。因为当遇到困难的时候,他们会给你极大的帮助。
最后,借用一句网友的回复结尾,“爱它,然后在你想解决和处理的工作与问题上全力以赴。”