做好开源项目 需要坚持

将一个项目的代码开源出来很容易,但是将它长久维护下去,并吸引更多人参与,这就比较难了。开发者Jim Cowart结合自身的开源项目维护经验,给出了本文这些建议,希望能为你的开源之路带来一些帮助。

  1.  坚持遵循Wheaton法则

  Wheaton法则的中心思想是“Don’t be a dick”,意思是不要成为一个不顾别人感受的人。在这里,我想说的是,你要耐心对待你的开源项目的用户。

  我以前是一个音乐家,但是后来开始喜欢编写软件。我常常认为我的知识和同事相比就如同瑞士奶酪(千疮百孔),但是很快我发现,每个人与其他人相比在某些方面都存在一些优势和差距。因此,对于那些在某些知识领域不如你的人,要有耐心。

  每个开源项目,无论大小,都会产生一个与它相关的文化。当你创造了这样一个文化,也意味着你已经创造了一个空间,供各知识水平的人来交流学习。要知道,能够成为其他人学习新事物路上的一个向导,将是一种荣誉。

  2.  选择一个开源许可证

  我选择的许可证是MIT。如果必要的话,你可以使用双许可证。你可以参考http://choosealicense.com/网站,或者阅读opensource.org中具体的许可证规范。

  3.  不要急于发布1.0版本

  你需要一些空间来对项目进行迭代、改进、重构和更改。

  如果有人使用了你的v0.2.3版本,那么说明他们认为你的项目中存在的风险是可以接受的,即使项目还在起步阶段。你可以在README或者其他文件中提醒用户该项目还处于实验阶段,并可能随时会更改。

  虽然我们都知道标上“1.0”标签在某些时候并不意味着完全可用于生产环境,但是大部分开发者都会有这种感觉。因此,不要急于将项目标记为1.0状态,这将有助于项目后续的改进。

  4.  不要害怕重建API(但要负责任地做)

  在早期维护postal.js这个项目时,我犯了一个大的错误——没有以我希望的方式重建API,现在回想起来,这样做似乎使得项目开发工作滞后了几个版本。

  但我最终更改了API,我觉得这个项目有了新的生命,按我的想法进行扩展变得更加容易。

  5.  不要害怕说“不”、“请提交测试”,“请修复{X}”等

  有时你会收到一个有可怕想法的pull请求。但有时它也可能是一个伟大的想法,但不应该属于代码基本功能(也许应该作为一个插件)。

  有时你会得到一个没有经过测试的pull请求。这些情况下,你需要以某种方式说“不”。当你这样做的时候,请参照第1条,应该礼貌地说明你的理由,而不应该只有一个“不”字。

  如果你因为他们没有进行测试而说“不”,那么你最好也应该先对自己的代码进行测试。此外,如果你有一个特定的代码风格(制表符、空格等),请在你的README中说明。

  6.  明智地选择合作伙伴

  如果你的项目已经增长到需要合作伙伴的地步,那么可以考虑让其他开发者来作为项目共同所有者或维护者。前提是,你要明智地选择这些人。

  要知道,没有人的想法会和你完全一样(这是很好的事情),但是你要确保你们的想法大部分能够重叠,以便项目能够朝着一个方向发展。无论一个人有多么博学或受欢迎,如果他是一个dick(见第1条),那么就不能让他成为项目所有者。如果在开源项目中出现派别争斗,那么项目离结束就不远了。

  一些好的做法是,给予贡献者和所有者不同的权限。如果一个初级开发者想参与修复问题,不要给他所有者的权限。

  7.  不要吝啬赞美和鼓励,给予贡献者应得的荣誉

  作为一个开源项目所有者,如果有人为你的项目贡献了一条非常好的建议,一定要在公开场合经常表扬他。这样可以鼓励更多的人贡献更多的想法或代码。

  我现在和一些人一起工作,如果他不能给我一些应得的荣誉的话,我想我在大多数事情上会对他产生不信任——不只是在开发工作上。

  8.  不要害怕放弃

  我之前开发过几个项目,当时我认为这些项目的想法很伟大,但是现在我已经放弃了这些项目。如果还有人发现你的项目有用并正在使用它们时,你很难放弃。但如果你因为学到了一些更好的方法,使得你放弃这个项目,你需要解释一下原因,有可能这会促成一个新的开源项目,并可以更好地帮助这些用户解决问题。如果你因为没有时间而放弃,你可以问问其他人是否愿意接管这个项目。

  如果你放弃了一个有人在使用的项目,用户可能会沮丧。不幸的是,这就是现实。你要从长远来看。比如,我之前写了很多工具,但现在看来,这些工具充斥着各种糟糕的代码,似乎放弃这些是一个明智的决定。

  总结

  开源是美丽而危险的。美丽是因为可以让很多人为了一个目标而努力,危险是因为你需要有持之以恒、乐于分享的精神。

  现在的一些光辉夺目的开源项目并不能代表所有,每天都会有大量的开源项目被创造,也有大量的开源项目死亡。你会发现一些对你有很大帮助的项目有可能在不久的将来会消失,除非该项目获得了足够多的贡献。这就是为什么持之以恒的精神和创造力对于一个开发者和开源项目来说比其他方面更重要。(编译:王果 / 审校:张红月)

  英文来源:Open Source Project Advice

 

转载:http://www.admin10000.com/document/2666.html

 

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值