启动开源项目的清单[关闭]


50

启动一个开源项目不仅是将源代码丢到某个公共存储库中,然后对此感到满意。您应该拥有技术(除用户之外)文档,有关如何贡献的信息等。

如果创建一份重要任务清单,您将包括哪些内容?


1
+1好问题。我可以建议: gawande.com/the-checklist-manifesto
JeffO 2011年

2
我推荐卡尔·福格尔(Karl Fogel)(最早的颠覆作者之一)的书《生产开源软件-如何运行成功的自由软件项目》, 这是一本O'Reilly的书。
迈克尔

卡尔·福格尔(Karl Fogel)生产开放源代码软件将为您提供帮助。这本书是完全在线提供的。
Coyote21 2011年

Answers:


34

最重要的是:

  • 自己使用该项目,并使其处于您喜欢使用它的有用状态。确保该项目有效并且有用。

我优先考虑的事情是:

  • 有一个简单的“是什么?” 具有一些讨论论坛(电子邮件或聊天)和源代码存储库链接的网站
  • 确保代码可以编译并正常工作,不要在主分支上提交正在进行的工作或半屁股补丁,以免破坏工作,因为这样别人的工作就会被打乱
  • 将具有已知许可证的许可证文件放入代码存储库,并标记版权所有者(可能是您或您的公司)。不要忽略许可证,编成许可证或使用晦涩的许可证。
  • 在HACKING文件中或在您的自述文件中包含有关如何做出贡献的说明。这应该包括在何处发送补丁,如何格式化补丁,代码缩进规则,项目的其他重要约定
  • 有有关如何报告错误的说明
  • 在邮件列表或任何论坛上都有帮助

在这些优先事项之后,我会说:

  • 文档(这样可以节省您在邮件列表上的工作...从列表中创建FAQ是一个简单的开始)
  • 尝试以“正常”的方式做事(不要发明自己的构建系统或使用一些奇怪的构建系统,不要使用1-space缩进,一般不要烦人古怪,因为它会增加学习曲线)
  • 推广您的项目。市场营销市场营销。您需要一些博客和新闻站点以及类似的内容来覆盖您,然后当人们对它感兴趣时,您需要与他们进行交谈并确保他们能够正常工作并查看其补丁程序。也许在相关项目的论坛中提及您的项目。
  • 始终以人为的方式尽快检查并接受补丁。立即是完美的。超过几天,您正在失去很多人。
  • 始终以人为的方式尽快回复有关该项目的电子邮件。
  • 营造一种热情/积极/有趣的氛围。不要混蛋 说请,谢谢,并表示赞赏。赶走任何出现的困境,并开始毒害社区。尝试在可能的时候亲自见面并建立联系。

那潜在的法律问题呢?如何确保实现不会无意中包含获得专利的算法?
书斋

不幸的是,无法确定这一点。给定一大堆代码,就无法知道查找相关专利所需的搜索词,这就是软件专利存在此类问题的原因之一。有时您知道有一项专利在申请,但是我从未听说过有办法确信没有一项专利在申请。很难证明是负面的。专利是一个足够大的话题,它们可能应该是他们自己的问题……
Havoc P

17

对于初学者,请降低进入壁垒,这意味着:

  • 易于安装,
  • 使其易于修改,
  • 轻松找到您的项目,
  • 只是使您想做的一切变得容易。

怎么样?

  • 回答您在文档中可能想到的每个问题,
  • 创建一个易于使用的构建系统,
  • 清理您的代码,没有人喜欢处理意大利面条代码,
  • 做一些人们需要的东西。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.