M代表那些默默无闻的英雄,他们让开源软件永续传承 | 开源软件的ABC
书呆子们好啊!欢迎回到《开源软件ABC》系列,我们正逐字母解析开源软件的世界。我是泰勒,今天要聊的是M——维护者,正是这些传奇人物让我们的心头好开源项目得以长久运转!
你见过那种人吗?他们仿佛就住在GitHub问题跟踪里,凌晨两点还在审阅拉取请求,还能百般耐心解释为什么某个功能请求不符合项目范围——这已经不是第一次了。这些人就是维护者,堪称开源界的超级英雄——只是少了炫酷的披风(不过我们或许该补上这块)。
让我们来剖析这些冠军人物的实际工作内容。首先,他们要处理的任务量堪比带着两个孩子却迟到足球训练的单亲妈妈。他们要审查代码、修复漏洞、抵御黑客、规划新功能,还要抽空回答新手提问——而这一切往往是在正常工作之余完成的,因为剧情反转来了:他们中的大多数人都是义务工作的!
说到免费——我们得正视这些维护者面临的挑战。试想拥有第二份全职工作,但没有薪水可拿,反而要听任网络上的陌生人指责你的文档写得一塌糊涂。倦怠感在维护者群体中确实是个大问题。这些人维护着关键软件,有时这些软件支撑着半边互联网,而他们只能在追剧的间隙挤出时间来完成这些工作。
觉得我在夸大其词?让我给你举个例子。还记得Log4j吗?那个小小的日志库,当发现安全漏洞时让所有人陷入恐慌?没错,它是由少数志愿者维护的。我们谈论的是被数百万用户使用的软件,而维护者们可能连咖啡钱都报销不了。
真正关键的是,这些维护者对——嗯,所有事物都至关重要。没有他们,你钟爱的开发工具就会像那张被遗忘的健身卡一样慢慢腐朽。正是他们确保一切保持最新、安全可靠,让你在第百万次执行 npm install 时,所有功能依然正常运转。
那么我们该如何帮助这些数字圣徒呢?首先,如果你在工作中使用了他们的软件,不妨考虑通过GitHub赞助或Open Collective支持他们。这就像请他们喝杯咖啡,只不过还能帮助避免下一次网络安全灾难的发生。
不想慷慨解囊?没关系,还有其他方式可以帮忙。写出像样的错误报告——所谓像样,就是比"它不行"更详细。提交包含测试用例的拉取请求。还有,或许——只是或许——在提问之前先看看文档,别问那些三年前在README里就有答案的问题。
开源世界里有几位传奇维护者。林纳斯·托瓦兹或许最负盛名——就是那位创造了名为Linux的小玩意儿,并以... 姑且称之为"色彩斑斓"的代码审查评论。还有吉多·范罗素姆,这位Python之父曾被尊为"终身仁慈独裁者",直至2018年卸任。更别忘了Evan You——这位Vue.js维护者即便每30秒就要处理一次GitHub通知,依然保持着惊人的友善态度。
开源维护的未来...相当复杂。我们终于开始讨论这样一个想法:或许,真的该给维护关键基础设施的人员支付报酬。很疯狂的概念,对吧?同时还有一股推动更好治理的浪潮,通过自动化处理枯燥事务,让维护者能专注于真正重要的事。
这是我们OSS入门指南的第十三封信!下次我们将深入探讨N代表Node.js——毕竟JavaScript在浏览器里搞的鬼还不够乱。在此之前,记得感谢你身边的维护者,顺便请他们喝杯咖啡吧!再见啦!