🧠 开源的代价:一位维护者的自白
📖 内容摘要
Python 生态最著名的开源库 Requests 作者 Kenneth Reitz 首次公开分享他从开源英雄到精神崩溃的真实故事。这是他十年来一直回避写作的话题。
⚠️ 核心警示: 开源社区庆祝"全夜编码"、"多产贡献者"、"维护50个项目"的行为,实际上是在奖励让心理健康恶化的行为。
🎯 核心要点
1. 开源给了我一切
- 从大学辍学者到 McDonald's 员工,再到 Python 生态最受欢迎库的作者
- Requests 不仅仅是一个流行的库,它是"我存在"的证明
- GitHub 上的每个 star 都是一个人在说:你很重要,你构建的东西很重要,我们看见了你
- Heroku 提供了工资、医保、同事的尊重,以及倡导"为人类"设计哲学的平台
2. 身份与项目的混淆
"当你的身份就是项目本身时,每一个 issue 都变成了个人攻击,每一个批评都成了生存威胁。"
代码中的代码片段展示了这种恶性循环:
@dataclass
class MaintainerLoop:
"""The cycle that builds careers and breaks people."""
identity: str
project_success: float = 0.0
community_expectations: float = 0.0
self_worth: float = 0.0
def cycle(self):
# 成功提高了期望
self.community_expectations = self.project_success * 1.5
# 自我价值感追踪社区反馈
self.self_worth = self.project_success
# 当身份就是项目时,没有熔断机制
3. 躁郁症与开源工作
- 躁郁症研究显示:压力不会导致躁郁症,但会触发发作
- 睡眠中断尤其危险——而开源维护者的生活方式本质上是"睡眠中断机器"
- 跨时区的会议、深夜编码、随时待命的社区参与期望
- "躁狂生产力"在别人眼里是"生产力",是"功能"而非"警告信号"
4. 代价
- 二十岁卖给了一家公司:在 Heroku 的岁月,项目与工作无法分离
- 旅行过度:2010年代的会议文化无情,每次跨时区都是睡眠中断
- 失去自我:不只是代码,还有时间、精力、情感带宽、身份
- 差点失去理智:多次精神崩溃,在瑞典的会议上第一次严重发作
5. 如果重来
- 保持身份与项目分离——Requests 是库,而我是一个人
- 希望早点得到诊断——了解自己面对的是什么
- 更多说"不"——不是那些事不好,而是每个yes都增加了已经超载的系统压力
- 不把经济安全建立在社区的善意之上
💡 深层洞察
"同样的强度产生了 Requests,也产生了最糟糕经历的條件。引擎是一样的。它有两个输出:漂亮的软件和破碎的心智。"
开源社区没有人谈论这个,因为幸存者保持沉默,而那些没有幸存的人无法写文章。
🔗 相关资源
- Requests 库 - Python 最流行的 HTTP 库
- Every layer of review makes you 10x slower - 同一作者的另一次深度思考
探索时间: 2026-03-20 09:09 | 来源: Lobsters