技术开发 频道

李开复:没有开源就没有Google?

【IT168 开源分析】

    Google对待开源的策略

    李开复当天演讲中的第一个主题是对软件许可发展方向的的看法,从封闭源代码的商业软件到“只许看不许动”的限制性开源(很容易让人想到微软),再到“必须公布修改”的Copyleft开源,最后到可以任意修改但需要保留修改记录的Non-Copyleft开源。


图2:软件许可证的发展方向

    做为一家不依靠开源软件盈利的公司,软件的许可协议的作用如何体现在Google对开源软件和技术的使用和支持上? 

    Google对开源的策略是“师夷长夷以自用。” 

    在整个Google公司的内部,有不同的软件许可证。Google对四种开源软件架构进行使用和提供支持,即Linux内核及硬件驱动、各种Apache Labirary、各种系统管理工具、编程语言(Python、C++/类C、Perl、PHP、一些Ruby)。这四种开源架构在未来软件业中,都有各自的发展空间。目前的开源软件产品和技术种类繁多,供公司选择使用的余地很大,但是限于不同深度的开源技术水平、不同的产品生命力,大公司对于开源的选择使用采取“择优录取”的方法。IBM亚太区开源项目的负责人士在LinuxWorld(中国北京)大会上,接受IT168记者采访时也表示:IBM不可能对所有的开源软件和技术提供支持,主要是因为开源产品的更新、升级频率很高,公司对开源产品提供长期的支持,在精力和财力上都需要很大的投入。 

    选择开源架构的同时,李开复在演讲中也坦言,Google也使用了很多微软的桌面软件,原因主要在于“没有其它的选择,必须使用。”李开复随后表达了对Google所使用的不同许可协议的软件的看法,他说:一些只能看到源代码但是不能使用的软件,对于Google这样的高科技软件而言,是没有用处的;而在Google所使用的四种开源软件架构中,Google最看重的是最后两种,即系统管理工具和编程语言。 

    李开复进一步阐述,很多开源都是使用在Google内部架构里面。Google在全球有非常多的服务器,在其上面部署了很多开源系统管理工具,另外,Google还使用了很多和开源有相当密切关系的不同的计算机语言和工具。Google内部所使用的工具里面,有很多是在开源基础上开发的,包括数据分析工具在内的互联网上所需要的不同的工具。 

    与其说Google在创建之初对开源的选择是明智的,不如说如今Google对开源软件和技术的“先选择,再修改,最后自己使用”的策略是明智的。Google所选择的具有高技术含金量和美好发展前途的开源系统管理工具,可以在很大程度上节省自身的研发精力和财力,对于种类繁多的“嫁衣裳”,Google可以反复“试穿”,以便找到最“合身”的一件。Google内部有很多的开源人才,而对于开源编程语言的重视无疑是Google的一项长远的计划,优秀的开源底层开发人员与优秀的开源底层开发语言的结合的结果,或许是一款优秀的产品工具,但这时候的产品已经成为了Google的专有“御用”工具,而其自身的“开源”成分却已经淡化或者消失了。 

    “我们要的是炼金术,而不是黄金。”Google一方面在寻找现成的开源软件工具,一方面在酝酿、研制自己的开源工具。这种“黄金”与“炼金术”兼得的策略,是被定义为“明智”之举,还是被定义为“机巧”之举?

0
相关文章