Language agnostic 专有系统文档';泄漏';如何阻止他们?

Language agnostic 专有系统文档';泄漏';如何阻止他们?,language-agnostic,Language Agnostic,版权持有人拉里·麦克沃伊(Larry McVoy)声称安德鲁·特里格尔(Andrew Tridgell)违反了BitKeeper许可证,对BitKeeper协议进行了反向工程,随后他撤销了免费使用BitKeeper的权利。在Linux.Conf.Au 2005上,Tridgell在其主题演讲中演示了他使用的反向工程过程只是将telnet连接到BitKeeper服务器的适当端口并键入“help” --[Git上的维基百科]( 有时,问题并不总是有人泄露您的文档或源代码,而是有人不记得删除一两个实用

版权持有人拉里·麦克沃伊(Larry McVoy)声称安德鲁·特里格尔(Andrew Tridgell)违反了BitKeeper许可证,对BitKeeper协议进行了反向工程,随后他撤销了免费使用BitKeeper的权利。在Linux.Conf.Au 2005上,Tridgell在其主题演讲中演示了他使用的反向工程过程只是将telnet连接到BitKeeper服务器的适当端口并键入“help”

--[Git上的维基百科](


有时,问题并不总是有人泄露您的文档或源代码,而是有人不记得删除一两个实用程序函数。您有什么样的流程和程序来阻止这些“泄露”的发生?

一开始就不创建它们。

非常重要对他们要小心,确保只有合适的人才能获得合适的文档(这包括确保管理层没有掌握专有文档)

我当时正在为一个客户定制我的公司编写的一些专有软件(它依赖于隐蔽的安全性)。我确保创建两个版本的文档,一个是我定制的完整技术设计文档,另一个是带有“安全性”的文档删除的位与客户共享。我犯了一个错误,将其提供给管理层,管理层将其与客户共享


幸运的是,客户对此只字未提(他们问了一些问题,但并没有大惊小怪,我想他们已经习惯了我公司软件的质量;)。

我不认为你可以简单地避免使用专有文档,但我认为你应该清楚地标明这一点


您为内部目的编写的任何代码都应该是单独项目的一部分,并且也应该明确标识。

不要试图阻止第三方技术与您的兼容


说真的,如果你没有信心让第三方更换兼容的产品,那么首先要考虑是否有那么多人会觉得你的产品很有价值。

这涉及到一个相关的主题,你会“暂时”将东西注释掉

在编写代码时,有一个保护您不受此影响的过程是很重要的

  • 在进行“临时更改”时,请确保对其进行注释,以便找到它们。单元测试在这里非常好
  • 确保基础设施足够智能,以便可以进行不同类型的构建。您不希望总是记住对特定类型的构建禁用某些东西。一旦你知道自己在制造人为错误,就要消除任何可能的人为错误。(至少为其创建一个票证。)

对于企业来说,这并不总是最好的选择。我不同意。如果你想让人们远离产品生态,那么你的产品已经很容易被取代。在这种情况下,企业最好的办法就是摆脱it。是的,尽可能实现自动化。决定这应该是什么类型的构建是一个人类的决定。如果可能,避免使用不同类型的生成。