扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
|
在记者所接触的包括IBM、惠普、英特尔等在内的各大公司当中,仅有Sun公司设置了软件开源首席长官。Sun为什么会设置这个职位?开源对Sun的业务会有什么样的影响?带着这些疑问,记者采访了Sun公司的软件开源首席长官Simon Phipps。
CWEEK:Sun为什么会设置软件开源首席长官这个职位?
Simon Phipps:Sun之所以设置首席开源官,这与Sun在24年来积极、深入地支持开源运动是分不开的。1980年,Bill Joy创造了BSD版本的UNIX,并且把该软件分发给了社区的其他人,这就是最初的开源。Bill Joy同时也是Sun公司的创始人之一,因此Sun公司成立时有BSD软件,加上比较大众化的硬件,开创了一个新纪元。Sun在1982年正式成立时,是业界第一个以开源为基础的公司。24年后的今天,Sun还有很多跟开源世界、开源社区延续下来的合作。正因为有这么多开源方面的活动,所以Sun决定设置首席开源官来定义和规划Sun的开源策略。
CWEEK:Sun执行开源活动这么多年,有哪些项目是成功的,哪些是不那么成功的?原因是什么?
Simon Phipps:OpenOffice社区是一个比较成功的例子,该社区现在已经是前三大的开源社区。这个项目当中的在线应用很多,但也存在不足。例如,社区得到的回馈不多。可以说,即使在一个非常成功的开源项目里,会有做得很好的地方,也有需要改进的地方。
谈谈有关Java的开源历史和将来,可能对回答这个问题有帮助。1995年,Sun发布了Java平台,并且把全部代码都提供给用户,使任何人都有可能做一些修改和衍生的工作,这在当时很难想象。当时,Windows 95也发布了,但微软保护了他的源代码,使别人不可能做类似的事情。
实际上,1995年,我在IBM工作,负责把Java用到IBM的机器上。当时,IBM把Java平台Port到IBM系统中,甚至不用通知Sun就可以完成这些工作了。1995年秋,IBM又把Java平台Port到AIX、OS2以及OS390上。
同样的事情在各地都在发生,大学拿到Java的源代码可以做进一步的工作,这样很多人在Java平台上做很多的工作,使Java可以传播得非常快,被应用得也非常多。这也在很大程度上帮助了开源概念的发生和壮大。因为人们看到,把源代码公布,不但没有破坏原有的软件技术,反而让它壮大、发展得非常好。Java非常成功,这让很多开源套用了Java成功的要素和理念。
CWEEK:刚才您谈到了Java对开源运动的促进,但Java本身并不是基于开源协议发布的,Java在这方面的进展如何?
Simon Phipps:我认为,Java许可证和它的发展都要符合开源的潮流。Sun计划在今年底或明年初,用开源的许可证来公布Java源代码。有人认为开源就是免费得到源代码,有人认为开源就是一个社区,有人认为开源是一个许可证概念。Sun认为开源是的概念是一个社区围绕着代码做工作,遵循共同的开源协议,并且有一个社区的组织和运作规则,这些缺一不可。因此,Sun一方面会开放源代码,另一方面也会组织一个开源Java的社区。不但开源,而且要把社区运作好。
CWEEK:Java开源会应用哪种许可?
Simon Phipps:Sun对不同的软件、不同的社区采用了不同的许可证。例如,Open SPARC采用GPL,OpenSolaris采用CDDL,Sun会根据每一个软件或者社区的特点来决定用哪一个许可证。目前,Java开源采用什么样的许可证还没有做决定。在Sun内部,有不少人想用GPL,但也有人觉得用APS或者CDDL更好,Sun正在征求社区的意见。需要指出的是,这是面向全球的意见征询,Sun也很希望听到中国的意见。
不过,Sun会一直坚持确保Java的兼容性。Java能够广泛传播的一个重要原因就在于,在任何地方、任何人用Java,都能保证是同一版本。目前的Java标准是用Java GCP来定义的,开源并不会改变Java的标准制定过程。
CWEEK:有人说,JEE5越来越庞大,会降低开发的简易性,您怎么看?以后,软件开发一定涉及三个层面,应用层、用户界面层以及核心层面。在核心层,开源系统可能是Linux,可能是BSD,可能是OpenSolaris,可能是其他的开源操作系统的内核,在用户这一层可能是KDE界面,也可能是Gnome的用户界面,可能是GNU的许可证。
我个人觉得,现在开源世界已经非常丰富,非常多样化,在这个时候给用户提供一个统一的编程模式和一个环境是很关键的。代码可能也越来越大,就是因为这个环境越来越复杂了。在实际使用的复杂程度方面,Java EE5提供了很多特性,可以用不同的方法使用。
CWEEK:Java的开源是逐步开放,还是说一次性全部开放?
Simon Phipps:因为Java有600万行代码,所以开放要花大约一年时间。如果按月份来看,它好象需要很多月,但是过两三年回头再看,你就会觉得Java是一下子全开放了。
CWEEK:现在的开源协议非常多,这要求开发者首先是法律专家,然后才是程序员。怎么解决开发者的这种困扰?
Simon Phipps:从2000年到2004年,很多公司参与到开源领域里来,并且开始定义适合自己需求的开源许可证。目前,有60多种开源许可证,作为开发者确实要从这一堆许可证里面去选择。我期望把一些Sun定义的开源许可证的数目缩减,让开发者选择起来更容易。去年,我就让SISSL这个协议退役了。
对于开发者来说,现在有三个选择:一是雇律师或者自己就是律师,懂得各种法律条文;二是相信某一个大公司,采用他的开源协议;三是相信第三方机构提供的可选开源协议名单。
CWEEK:有人在说GPL第3版不如以前的GPL第2版开放,您对此怎么看?
Simon Phipps:GPL v3还没有最后定稿,最终的定稿会在明年底。有句谚语说:“你肯定不想看香肠是怎么制作的”。实际上,GPL v3草案的第二个版本比草案的第一个版本已经开放很多了,草案还会有第三个版本、第四个版本,然后才是最终版本。在这个过程当中,制定标准的委员会会听取各方面对许可证的意见,所以大家不用太担心。我对GPL非常看好,我希望中文版本出来以后,Sun很多软件可以用GPL。(责任编辑:袁斌)