点对点 (P2P) 世界/构建 P2P 系统/开发人员
外观
有许多理由让人们在创建 P2P 应用上投入时间和精力。正如我们在第一章中已经介绍的那样,P2P 技术已经开始影响甚至改变了许多人类活动领域。除了任何编程任务的正常原因(金钱、名声和乐趣)之外,它也可以是一种表达政治立场的方式,或者是一个在网络甚至经济学中实施新概念的工具。最重要的是,P2P 本身就是人与人之间的联系,人们为了共同的目标而共同努力。作为程序员,您要创建必要的基础设施来实现这一点。
任何 P2P 项目都旨在成为广泛使用、值得信赖和可靠的项目。很少有项目是开放的、安全的、免费的、无歧视的、平等的、不受限制的和抗审查的。
选择合适的许可证是任何公开发布软件最重要的步骤。它将决定项目的执行方式,甚至限制用于实施解决方案的编程语言、获得最终产品所需的时间,并且对于与用户的互动越来越重要。
您可以使用无数现成的许可证,您甚至可以创建自己的许可证。在这一步,如果您不了解所有含义,就不要冒险。
开源倡议 (OSI) 提供了关于开源含义的优秀注释定义,请访问以下网址: (http://www.opensource.org/docs/osd )。
⁴
由于这会导致您陷入法律纠纷,以及您需要遵守的形式主义和义务,因此这是一种最麻烦的设置。
限制网络参与度将有意减少其实用性,因此大多数 P2P 服务都是免费的,或者至少支持某种程度的免费访问。
有几种模型是简单捐赠/付费模型的变体,它们根据收集的价值,为用户或项目提供特定的目标。
- 赎金
- 将应用的功能或代码作为赎金支付,如果人们捐款并达到了目标,您将同意遵守您的提议(例如:公开源代码、修复或实施功能)。
赎金已被证明在实践中有效,它被用于几个开源项目中,甚至作家也测试了这种方案,作家劳伦斯·瓦特·埃文斯在其多个标题中进行了测试,是一个后者的例子 测试,全部都成功地达到了他的财务和生产目标。
- 付费功能
- 作为赎金模型的变体,在这种特殊情况下,您应该格外小心地告知用户他们为哪些内容付费,以及您为该支付提供的合法性。额外的功能可能是更好的服务,甚至现有服务的质量更高。
- 付费支持
- 付费支持包括向用户提供优先技术支持的付费服务,这在开源项目中非常常见。您应该避免过于复杂化软件以从中获利,因为用户将是网络。一种解决方案是为大众消费提供默认的简化版本,并启用对软件、协议或网络的高度调整,然后尝试从中获利。
如果您想出了新的技术或连接现有技术的新方法,这可以成为收入来源。