作为世界上最重要的开源项目之一,Curl不可谓不重要。自1996年诞生以来,Curl从最初的百余行代码,发展到如今拥有超过18万行代码、由1400多位贡献者参与的大型项目。它以其卓越的网络数据传输能力,被广泛部署在超过十亿台设备中。几乎凡是偶尔连接互联网的设备,都会或多或少地依赖Curl完成通信任务。尽管其应用场景遍布从汽车到消费电子、从服务器端到移动设备的方方面面,但维护Curl的工作却几乎完全依赖于项目的唯一全职员工 - - 项目创始人兼维护者Daniel Stenberg一人负责。这样的现实,凸显了开源社区尤其是核心项目维护者们面临的巨大压力和严峻挑战。
项目的成功与广泛应用,很大程度上依赖于像Curl这样基础设施软件,但令人担忧的是,在众多使用Curl的知名企业中,几乎没有直接为其维护提供资金或贡献代码。Daniel Stenberg在Open Source Summit Europe 2025的演讲中展示了两张幻灯片,一张列出了47个汽车品牌使用Curl,另一张则是列出为Curl贡献过代码的汽车品牌,令人大跌眼镜的是后一张幻灯片几乎是空白的。这暴露出一个令人不安的现实 - - 大量企业在享受开源软件带来的便利的同时,却并未承担相应的维护责任。Daniel强调,这种现象从法律角度看没有任何问题,因为Curl采用的是自由许可证,允许任何人无偿使用和修改。然而,他呼吁这些企业及用户应更多地思考他们依赖的软件的未来,是否愿意以某种方式支持其持续发展。维护开源软件本身是一项极其繁重且细致的工作。
除了常见的功能开发之外,维护者还必须不断关注安全问题,审查用户提交的补丁,撰写和更新文档,管理社区网站和邮件列表,回应用户咨询,甚至处理各种意外事件。所有这些任务堆积在单人的肩上,长此以往容易造成身心疲惫。令人苦恼的是,许多企业不仅不提供帮助,反而增加了维护负担。Daniel曾收到苹果公司的邮件,由于用户无法获得苹果设备的技术支持,客服人员竟然直接将用户引导到Curl项目寻求帮助,明显推卸责任。此外,一些企业在合规审查阶段提出苛刻的资料请求,要求在极短时间内回应Curl的安全及合规信息,但当发出支持合同后便杳无音讯,这种"利用而不负担"的行为让人无奈。相比之下,维护者也经常收到令人伤感的邮件,比如有人的主题是"我要杀了你",内容不堪,背后是精神状态异常的人发出的威胁,恶意和无理要求层出不穷。
更让人困扰的是人工智能技术的兴起引发了新问题,例如有人利用大型语言模型生成虚假或夸大其词的漏洞报告,发送给Curl团队,严重浪费维护者宝贵的时间和精力。Curl官方网站也频繁遭到分布式拒绝服务攻击,这些由AI驱动的爬虫程序带来的海量无效流量使得网站带宽消耗剧增,只有极少部分流量是真正的源码下载请求。这不仅增加了项目的运营成本,也影响了维护者的工作效率。尽管如此,维护工作中的温情片段同样令人感动。Daniel曾分享一封11岁孩子的感谢信,孩子在学习和实验中利用Curl,表达了对项目的喜爱和感激之情,温暖了所有坚持维护这项开源宝藏的人的心。面对维护压力,社会和开源社区也在尝试寻找解决之道。
很多用户和小型企业或许很难直接支持所有依赖的开源项目,捐赠能力有限且捐赠渠道不便。有人提出通过中介机构集中管理微捐赠,简化支持流程,让更多人能以小额资金贡献力量。尽管微支付概念有其技术与法规上的挑战,但相关平台如OpenCollective和thanks.dev已开始为维护者筹集资金,慢慢推动更公平可持续的维护生态。此外,维护者社区呼吁所有依赖开源项目的企业增强责任感,认识到开源不仅是免费资源,更是需要持续投入维护和改进的公共基础设施。只有企业积极参与其中,才能防止核心项目因人力枯竭而陷入困境。Curl的维护历程折射出整个开源生态面临的通病 - - 核心维护者往往孤军奋战,承担超负荷的工作任务,也容易在压力下产生倦怠。
公众和企业用户若能深入理解开源软件的重要性及其维护的复杂性,将更有可能参与到资金支持、代码贡献和社区协作中,从而构建一个更加健康、持久和繁荣的开源环境。展望未来,开源维护或许将迎来更多创新的支持机制,包括法律激励、企业资助和社区自治等多重结合,帮助像Daniel这样无私奉献的维护者摆脱过重负担,专注提升项目质量与安全。Curl项目的故事提醒我们,开源不仅是一种技术现象,更是社会协作与责任担当的体现。只有各方共同努力,才能保证支撑数字时代网络基础设施的核心软件持续稳定运行,推动全球信息社会更好发展。 。