在介入社区之前,比如开放源代码或者其它什么的,你须要做一些根本工作。对于有眼界的开源供献者,这意味这你须要懂得社区的目标,并进修应当大年夜哪里起步。人人都想供献源代码,然则只有少量的人做过预备,并且愿意、同时也有才能完成这项艰苦卓绝的工作:测试补丁、复审代码、撰写文档、修改缺点。所有的┞封些不受待见的义务在一个健康的社区中都是须要的。
你想成为开源项目中自得满满、功成名就的那小我吗,那就要遵守下面的“潜规矩”。
正如体育界不成文的规定一样,这些规矩根本上不会涌如今官方文档和正式记录上。比如说,在棒球活动中,大年夜比分领先时不要盗垒,到跑垒员跑了第一时也不要放弃四坏球保送。对于第三者来讲,这些器械很难解,甚至认为没什么意义。然则对于那些想成为 MVP 的队员来说,这些都是理所当然的。
软件开辟,特别是开源软件开辟中,也有一套不成文的规定。和其它的团队活动一样,这些规定很大年夜程度上决定了开源社区若何对待一名开辟者,特别是新参加社区的开辟者。
按部就班,循序渐进
为什么要在优雅地写代码前做这些呢?这是一种信赖,更重要的是,不要只存眷本身开辟的功能,而是要存眷全部社区的动向。
博闻强识,敦善不怠
当你在某个社区中建立起本身的名誉,那么很有须要周全懂得该项目和代码。不要逗留于义务状况上,而是要去研究项目本身,懂得那些超出你善于范围之外的常识。不要只把本身的懂得局限于开辟者,如许会让你着眼于让你的代码有更大年夜的影响,而不只是你那一亩三分地。
打个比方,你已经完成了一个收集模块的测试版本。你测试了一下,认为不错。然后你把它开放到社区,想要更多的人测试。结不雅发明,当它以特定的方法安排时,有可能会破坏安然设置,还可能导致主存储泄漏。如不雅你将代码视为一个整体时问题就可以水到渠成,而不是孤登时对待问题。这注解,你要对项目各个部分若何与其他人协作交淮竽暌剐比较深刻的懂得。让你的补丁填坑而不是挖坑。如许你朝成为社区精英的目标上又进步了一大年夜步。
粗枝大年夜叶,自寻懊末路
代码提交完毕后你的工作还没停止。如不雅代码被接收,还会有一些关于这些更改的评论辩论和常见的问答,还要做测试。你要确保你可以准时提交,尽力去懂得如安在不影响社区其他成员的情况下,改绝代码和补丁。
调和相处,世人助己
开源社区不是自相残杀的丛林世界,我们更看重项目标价值而非个别的供献和成功。如不雅你想给本身加分,让本身成为更重要的社区成员、让社区回收你的代码,那就尽力赞助别人。如不雅你熟悉收集部分,那就去复审收集部分,用你的专业技能让全部代码加倍优雅。事理很简单,顶级的审查者经常和顶级的供献者打交道。你赞助的人越多,你就越有价值。
阁下逢源,面面俱到
作为一个开辟者,你很可能欲望为开源项目解决一个特定的痛点。或许你想要运行在一个今朝还不支撑的体系上,抑或你很欲望改革社区今朝应用的安然技巧。想要引进新技巧,特别是比较有争议的技巧,最好的办法就是让人无法拒绝它。你须要透辟地懂得底层代码,推敲每个极端情况。在不影响已实现功能的前提下增长新功能。不仅仅是完成就行,还要在特点的完美高低工夫。
开源社区也有很多玩玩就算的人,然则承诺了就不要随便马虎掉信。不要就因为提交被拒就分开社区。找出原因,修改缺点,然后再试一试。当你开辟时刻,要和全部代码库保持一致,确保即使项目产生变更而你的补丁仍然可用。不要把你的代码留给别人修复,要本身修复。如许可以在社区形成优胜的风气,每小我都本身改。
这些“潜规矩”看上去很简单,然则照样有很多开源项目标供献者并没有遵守。如许做的开辟者不仅可认为成功地推动他们本身的项目,并且也有助于开源社区。
作者简介:
Matt Hicks 是 Red Hat 软件工程的副主席,也是 Red Hat 开源合作团队的奠定成员之一。他历时十五年,在软件工程中担负多种职务:开辟,运行,架构,治理。
【编辑推荐】
- 进行数据发掘的8个最佳开源对象
- 5个开源RSS订阅浏览器
- 2016年度顶级开源创尴尬刁难象
- 开源Anbox在Linux中运行Android应用
- 保护VS Code开源项目背后的那些工作
糜不有初,鲜克有终
推荐阅读
中科院信息家当研究院精准医学研究所所长赵屹研究察在GMIC全球移动互联网大年夜会上,就“精准医疗与云计算”话题接收查访时指出,固然今朝精准医疗最关键的问题在于基因测序、解读等技巧的研发,但将来,>>>详细阅读
本文标题:六个开源软件开发的“潜规则”
地址:http://www.17bianji.com/lsqh/35288.html
1/2 1