当一个开源项目越来越受欢迎时,设定清晰的边界来帮助您长时间保持活力和生产力就变得尤为重要了。

为了深入了解维护者的经验及他们如何找到工作平衡,我们与维护者社区的 40 名成员举办了一个 workshop。通过这样的方式,我们得以学习到他们在开源领域所经历的疲劳过度的第一手情况,以及他们采取了哪些实践来在工作中维持平衡。这正是”个人生态学”概念得以应用的场景。

那么,个人生态学是什么?根据 Rockwood Leadership Institute 的描述,它是”在我们的一生中,维持平衡、节奏和效率以保持能量”。这种观点为我们的交流提供了一个结构,帮助维护者意识到随时间发展,他们的行为和贡献是一个更大的生态系统中的组成部分。根据世卫组织的定义,由长时间的工作压力引起的综合症状,即”疲劳过度”,在维护者中并不罕见。这常常会导致失去工作动力、无法集中精力,以及对与之合作的贡献者和社区感到缺乏同情和理解。

通过理解个人生态学的理念,维护者可以主动避免疲劳,把自我护理放在首位,并保持心态平和,从而更好地工作。

作为维护者的自我护理和避免疲劳的提示:

确定您参与开源工作的动机

花时间思考哪些开源维护任务能激发您的热情。明白自己的驱动力可以帮您更有针对性地安排工作,保持热情并随时迎接新挑战。不论是用户的正面反馈、与社区的互动乐趣,还是深入探索代码带来的成就感,了解这些驱动力都能帮助您更好地集中精力。

反思什么使您失去平衡并感到压力

知道哪些因素导致我们感到疲倦是非常关键的。以下是在开源维护者中常见的一些情况:

  • 缺乏积极的反馈: 用户在遇到问题时更容易给出反馈。而当一切正常时,他们往往不会说什么。看到问题列表不断增长,而缺乏正面反馈来展示您的贡献所带来的改变,这可能会让人感到挫败。
  • 不说’不’: 在开源项目中,很容易承担超过自己能力范围的责任。不论是来自用户、贡献者还是其他维护者,我们不能始终满足每个人的期望。
  • 独自工作: 作为维护者可能会感到很孤单。即使你与一群维护者合作,过去几年也很难召集分布在各地的团队。
  • 时间或资源不足: 对于那些不得不牺牲自己休息时间来参与项目的志愿维护者来说,这尤其是真实的。
  • 需求冲突: 开源社区有很多出于不同目的而参与的团队,这有时会难以处理。如果您是被雇来进行开源工作的,那么您的雇主的利益有时与社区的利益可能不会完全一致。

注意疲劳的迹象

这样的节奏你能保持多久?10周?10个月?还是10年?

有像 @shaunagmBurnout Checklist 这样的工具可以帮助你反思自己现在的工作节奏,看是否需要进行某些调整。一些维护者还利用可穿戴设备来监测睡眠质量和心率变异性等与压力有关的指标。

您需要什么来继续支撑自己和您的社区?

对每位维护者而言,这都会有所区别,并且会随着您的生活阶段和其他外部因素发生变化。但以下是我们收到的一些共同点:

  • 依赖社区: 分配任务和寻找贡献者可以帮助减轻你的负担。对一个项目而言,有多个协作者能让你放心休息。与其他维护者以及更广大的社区,如 Maintainer Community 建立联系,这对于获得同行的支持和学习都是宝贵的资源。

    您还可以探索与用户社区的交互方式,这样可以定期收到反馈,了解您在开源工作中所做的贡献的影响。

  • 寻找资金: 不管您是想找点小钱买披萨,还是计划全职投身开源,都有众多资源可供参考!首先,可以考虑开通 GitHub Sponsors 让其他人赞助您的开源项目。如果您打算全职转型,可以申请下一期的 GitHub Accelerator

  • 使用工具: 考虑使用像 GitHub CopilotGitHub Actions 这样的工具,自动化常规任务,从而为更有价值的工作腾出时间。
  • 休息和充电: 留出时间享受开源之外的爱好和兴趣。利用周末休息和充电,并调整您的 GitHub status 来显示您是否在线!良好的睡眠对于长期保持工作热情和效率至关重要。

    如果您发现项目中某些部分特别令人享受,试着调整您的工作,这样您每天都可以体验到这种愉悦。

  • 设定界限: 您不能对每个请求都回应”好”。您可以简单地回答:”我现在做不到,而且未来可能也不会这么做。”或者在 README 中明确列出您愿意做和不愿意做的事情。例如,您可以写:”我只会合并那些清晰解释了为何创建的 PR。”或者,”我只在每两周的星期四的6-7点审查问题。”这样可以为他人设定预期,并在其他时间为您提供一个可以参考的依据,从而减少贡献者或用户对您时间的要求。

学会坚决制止有毒的行为和消极的互动。不对你不在乎的事情投入精力是完全可以的。

请记住,个人生态是随着您在开源之旅中不断前行而演变的持续实践。通过把自我护理和保持平衡放在首位,您可以为开源社区提供持续有效的贡献,确保自己的健康和项目的长久发展。

额外资源

贡献者

非常感谢所有与我们分享经验和技巧的维护者!

本指南是由@abbycabs编写的,由以下人员贡献:

@agnostic-apollo @AndreaGriffiths11 @antfu @anthonyronda @CBID2 @Cli4d @confused-Techie @danielroe @Dexters-Hub @eddiejaoude @Eugeny @ferki @gabek @geromegrignon @hynek @IvanSanchez @karasowles @KoolTheba @leereilly @ljharb @nightlark @plarson3427 @Pradumnasaraf @RichardLitt @rrousselGit @sansyrox @schlessera @shyim @smashah @ssalbdivad @The-Compiler @thehale @thisisnic @tudoramariei @UlisesGascon @waldyrious + many others!