技术开发 频道

Google:还会有人遵守开源许可协议吗?

【IT168 开源分析】

     许可协议对开源的影响

    总有些许可是不那么美好的。 迪博纳说:“最后它会影响到你的效率。理解这个问题会帮助你摆脱这种情况。”

    许多许可在遵循时会遇到许可本意与字面意思相违背的情况。许可中的许多条款不很明确,违反时也不会形成很严重的处罚。 “Google之所以遵循,是因为这么做是正确的。财政上的处罚不那么严重。”迪博纳提到,人们经常会因许可问题违反法律,但他们很容易做出补偿。在迪博纳看来,多数程序员们的目的只是为了保证他们的代码和程序继续以开源的形式传播下去。 “最后的结果是开发人员们希望别人使用他们的代码——而这很可怕。” 

    目前的GPL第二版中,有些条款经常被人们误解。
“如果你连接这段代码,你需要将你生成的代码设为自由使用。”但这里并没有对“连接”做出明确的解释。比如说,一位用户使用GCCto来编译程序,并不意味着所生成的软件是遵循GPL的。 迪博纳解释称:“多数人认为,连接是指动态连接一个函数库。”而根据GPL的一个引申协议,简化了GPL中的规定,动态连接并不是非法行为。 

    GPL与其它开源许可的条款并不一定针对有困难的方面。 “问题不在于对法律的反映、修订和遵守。最困难的部分是对软件的跟踪。” 

    迪博纳表示,Google开发了一个跟踪工具来查询每个软件的信息和来源。这样一来,代码就得到了隔离,将违反许可的可能性降到了最低。 

    “我们花费了许多时间来训练工程师。”在训练中,迪博纳对Google的新工程师们传授了一个基本理念,其中包括Google的代码库,以及鉴别、区分代码段的重要性。 “一旦他们养成了你所在组织的习惯,他们也就会习惯于遵守许可。” 迪博纳最终把问题归结为,理解开源程序的来源以便更好运用开源软件。也就是说,你可以更多地享受开源代码的好处,通过在你自己的软件中使用开源代码参与到它的发展过程之中。 

    迪博纳说,有一点大家必须要理解:多数开源程序员并不是为了钱而编写代码。“他们知道自己在做什么工作。如果他们想向你收钱,他们会选择商业许可——商业许可中有许多机会。如果你想赚钱,千万不要放弃这些机会。” 

    迪博纳的讲话中的确提到开源可以赚钱,但重复利用许可收费并不是可行的方式。迪博纳称:“99%的开源项目是因为一两个人遇到感兴趣的问题而发起的,他们使用许可来互相协作。” “开源许可为我们创造了可以共同努力的环境,而不是互相敲诈的借口。”

0
相关文章