常见问题
by
yunza80
—
last modified
2006-03-24 22:52
常见问题: 关于社区
- 关于社区
- 关于开放源代码
- 关于技术路线
- 关于开发合作和商业合作
- 为什么要创建OpenDesktop社区?
回答者:张昀 2003.12.4
Linux在服务器方面的市场成绩大家有目共睹。虽然存在不同看法,然而桌面Linux正在逐渐兴起已是一个不争的事实:- 桌面Linux的市场占有率已经超过Mac OS,成为第2大桌面操作系统产品。
- 桌面Linux的市场占有率在过去的两年内翻了一番。
- Sun,Novell等大公司先后推出不同的桌面Linux操作系统
- IBM宣布开始大力推广桌面Linux操作操作系统
- 很多国家的政府和企业已经部署了桌面Linux操作系统
中国政府实际上很早就意识到这一点,北京市政府开展的“扬帆”、“启航”工程,就是大力开发桌面Linux操作系统,并且在国际上产生了很大的影响。
然而从历史上来看,中国在高科技领域有过很多深刻的教训。例如当年的生物工程、计算机、激光设备等等,中国起步的时间都很早,几乎和国际同步。然而做着做着,发展速度越来越慢,最后被国外公司彻底打败。
桌面Linux操作系统面临的形势和当年的情况十分类似,而且国内也开始出现了发展速度降低的苗头。如何抓住这次得之不易的机会?如何避免重蹈覆辙?是大家在不断思考的问题。
总结以前失败的原因,大概有这么几条:- 参与的开发人员不够多,影响面不够广
- 各单位低水平重复开发的情况严重
- 组织不够紧密,各单位协调性不够
- 少量单位存在投机心理,拿了政府的钱之后,工作态度敷衍
采取开放源代码社区开发桌面Linux操作系统的优点是:- Linux的发展本来就是依靠开放源代码社区完成的,说明这种模式十分合理,而且能够取得很大的成功。
- 社区能够造成很大的影响,吸引更多的企事业单位及程序员来参与开发。
- 各单位可以基于社区的开发成果继续开发,让大家都有很高的起点。
- 在社区中,所有的开发计划、开发进度和开发成果都是公开的,放在网上的。“群众的眼睛是雪亮的”,这样便于政府监管,提高开发的组织和协调能力,避免决策失误,同时让那些投机分子无所遁形。
- 社区还给Linux的开发者提供了一个很好的技术交流场所,大家可以透过社区协同开发、学习和互相切磋技术。
- OpenDesktop和共创开源公司的关系是什么?
回答者:张昀 2003.12.4
从国际上的经验来看,开放源代码社区必须有一批骨干力量从事开发,然后才能广泛吸引各界人士参与。没有骨干开发力量的社区很容易变成一盘散沙,什么事情都做不成。
目前中国的国情是绝大部分程序员还没有到“衣食无忧”的地步,所以很难指望Linux爱好者来支撑社区作为主要的开发力量,因此需要成立一个企业,来作为社区开发的骨干力量。这个企业就是共创开源软件公司,它是对原来的一个Linux企业进行重组和增资后形成的。
共创开源公司和社区的关系类似于Fedora和RedHat的关系:- 共创开源公司和OpenDesktop是两个独立的机构,不是一套人马两块牌子。
- 目前共创开源公司是社区最主要的代码贡献者,也是社区的维护者,但并不是唯一的贡献者,例如Linux内核方面的工作就是由清华大学软件学院和共创开源公司共同开发的。这样做是为了让社区在起步阶段能够得到很好的发展。
- 随着越来越多的开发者参与社区,社区慢慢会形成自己的维护者和代码贡献团队,从而具有完全的独立性。共创开源公司将和其他单位一样参与社区开发,但是不会试图控制社区,社区也不会变成共创开源公司的附属品。
共创开源公司将会基于OpenDesktop的开发成果,开发自己的商业化产品和服务。因为只有能够形成良好的商业循环,共创开源公司才能够投入更多的力量,促进OpenDesktop社区持续、稳定的发展。
关于开放源代码 - 为什么OpenDesktop不是完全基于开放源代码软件构造?
回答者:张昀 2003.12.4
因为开放源代码社区主要开发的是软件技术,而一个产品化的桌面操作系统还需要很多其他东西,例如字体、例如图像库、美术设计,以及像Flash插件这样的第3方软件。
我们认为大多数用户需要的是一个好用的桌面Linux操作系统,而不是一个“100%开放源码但不好用”的系统,因此OpenDesktop不是完全基于开放源代码软件构造的。 - 为什么共创开源公司的部分开发代码没有开放?
回答者:张昀 2003.12.4
第2个问题介绍过,共创开源公司和社区是两个独立的机构,因此共创开源公司可以决定哪些代码贡献给社区,哪些代码是公司自己需要用于产品的。
而之所以共创开源公司需要保留部分代码用以开发商业化产品,是因为我们需要形成良好的商业循环,用以支持社区持续、稳定的发展。大家都知道,现代软件开发最重要的是持续发展能力,如果只图个人名利进行一时的炒作,那么我们确实可以全部开放源代码,然而那样是对社区不负责任,对Linux事业不负责任。
尽管这样做会让我们遭到一些指责甚至谩骂,也可能被某些人用来炮制攻击我们的理由,但是我们决定忍辱负重。相信时间会证明一切,群众会对我们的做法给出一个公正的评价。
虽然保留了部分源代码,但是我们严格遵循国际版权协议:基于GPL/LGPL开发的软件完全开放,只有自己开发的独立软件或者函数库才是不开放的。这一点是完全符合国际惯例的,和那些“代码抄袭者”是有本质区别的。
我们仔细地选择需要保留的源代码,确保不会对社区的开发造成严重障碍,最后我们只保留了很少一部分只对商业化产品才有意义的代码,例如办公套件的精确兼容函数库。绝大部分的开发者根本不会研究这么“生僻”的代码,这些功能对普通用户也没有太大意义。
共创开源公司已经投入了60个Linux开发人员参与社区开发,以后还要增加到100人,以北京的人力成本,大家可以估算出我们的成本有多高。我们希望能够保障OpenDesktop社区持续不断地发展,因此我们必须开发商业化的产品。如果您觉得OpenDesktop社区起到了一些好的效果,希望她能够持续发展,那么我们相信您能够理解我们的行动。
我们试图努力处理好开放源代码和商业化产品之间的关系,使之能够形成良好的互动。如果您有更好的建议,真心希望您和我们联系,谢谢!
关于技术路线 - 为什么OpenDesktop和Fedora Core的结构体系这么接近?
回答者:张昀 2003.12.4
因为OpenDesktop本来就是基于Fedora Core开发的。
在OpenDesktop开发之初,我们内部有争论,是开发一个全新的Linux发布版,然后在此基础上开发桌面功能,还是选择一个现有的Linux发布版,然后把重点放在桌面功能的开发上。
后来我们决定采用现有的发布版,把开发重点全部放在桌面功能上,因为用户希望的是良好桌面功能的操作系统,而不会关心底层到底用的是什么样的软件包。
而且由其他社区制作Linux发布版,OpenDesktop专注于桌面Linux操作系统,这样也更能体现现代社会的专业化分工原则。
还有一个原因也促使我们做出了这样的选择。因为现在很多人希望在Linux下进行开发,而不简单将Linux用于桌面。这些人不会选择非主流的系统进行开发,因此他们最希望看到的是能够和主流系统全部兼容,又有很强桌面功能的系统。
之所以选择Fedora Core(原来的RedHat Linux),而不是Debian或者SuSE,基于以下理由:- Fedora Core的整体性能比Debian好,更新速度快,国际上获得的支持也更多。例如Fedora Core的最新版本是2003.11月发布的,而Debian的最新版本是2002.11月发布的,相差了整整一年。
- Fedora Core是开放源代码社区开发的,而SuSE是由Novell公司控制的。
虽然我们采用Fedora Core作为基础,但是从内核、到图形环境、到应用程序,我们都作了全面的、系统化的改进。这一点我们不像Novell公司的Ximian Desktop和Sun公司的Java Desktop,他们的系统都是在Linux发布版的基础上,“包裹”了一层图形界面的外壳。因此OpenDesktop有更好的整体性能和中文处理能力。
既然我们采用Fedora Core作为基础,并且对于Fedora Core完全兼容,因此对于我们没有修改过代码的软件包,我们就直接取自于Fedora Core,而没有重新打包。对于技术开发来说,简单地编译一遍并更换打包者的名字,根本没有实际意义,对吗? - 为什么OpenDesktop选择了ThunderBird而不是Evolution作为默认邮件客户端?
回答者:张昀 2003.12.4
Evolution是一个功能非常强的软件,然而我们认为它有3个非常大的缺陷:- 结构和界面都太复杂,对于普通用户来说,难学难用
- 对HTML邮件的支持很差,而且一、两年内看不到解决的希望
- 中文处理能力很不够,有太多的问题
Evolution更接近MS Office中附带的Outlook,因此我们计划,如果Evolution发展得十分成熟,我们可能将它和办公套件打包在一起。
关于开发合作和商业合作 - 如何成为社区的“共建单位”
回答者:张昀 2003.12.4
个人开发者不需要成为“共建单位”,可以直接以个人身份参与开发。
单位可以申请成为社区的“共建单位”,只要为社区作出一定程度的贡献即可,包括:- 开发开放源代码软件
- 编写各种手册、教程、翻译等
- 帮助测试、质量管理
- 帮助建设网站,提供下载空间或各种支持
成为社区“共建单位”可以得到以下好处:- 获得各种技术支持、咨询、服务、帮助等
- 查看所有的开发文档、更深层次的技术资料等
- 直接和社区开发人员讨论技术问题
- 能够更快、更好地将社区成果进行商品化转换
- 能够以内部价格获得或者OEM共创开源公司的产品
- 能够得到社区帮助,申请科研项目或者进行各种招标
- 如何进行商业合作
回答者:张昀 2003.12.4
您可以和OpenDesktop社区以及共创开源公司进行各种形式的商务合作:- 代理销售商业化产品(桌面操作系统、办公套件、网络计算机等)。
- OEM我们的商业化产品,迅速推出自有品牌的软件,根据需求不同,您可以选择包含源代码或者不包含源代码。
- 委托开发针对特定应用的产品,例如繁体版办公套件等。
- 购买某些技术或者源代码。
- 委托我们提供关于Linux的技术咨询、技术服务,或者设计整体解决方案、IT外包等。
- 联合申请项目、联合招标等。
- 聘请高级技术人员讲课、讲座等。
如果您还希望进行一些上面未列出的商务合作,也可以和我们联系商洽。 - 如何支持社区的发展
回答者:张昀 2003.12.4
如果您觉得OpenDesktop是一个很好的社区,并希望支持社区的发展,那么可以采取以下方式:- 进行商务合作。和我们进行各种形式的商务合作,都有助于社区的进一步发展。
- 捐赠设备或者软件。拟捐赠的物品将由我们先列出详细的用途及使用方法,并经过您认可后,然后再接受。这样确保物品的能够按照您希望的方式被使用。
- 捐赠现金。由我们先列出详细的用途,并经过您认可后再接受。现金使用后,将向您提供详细的账目。