网络通信 频道

Linux:失落的世界

  在应用开发领域,OS X可能正在蚕食Linux的地盘。

  近期Linux刚刚迎来了20岁生日,不过对于大多数Linux的忠实粉丝来说,这个生日喜忧参半。据加州Evans数据公司研究员Santa Cruz最近公布的年度应用开发调查数据显示,Linux在普及度上已经下滑至第三位,排在了Mac OS和Windows之后。

  调查显示,目前大约有7.9%的开发者将OS X作为主要的开发平台,仅5.6%的开发者在使用Linux。

  IDC应用开发软件部门项目总监Al Hilwa称:“我对这样的结果并不感到惊讶。目前Mac目前看起来越来越受欢迎,我看到大量的开发者正在改用OS X平台。”

  这些数据意味着什么呢?苹果一直都目标锁定在“创意专业人士”,但是过去这一群体主要是指图形设计人员和相关设计人员,而不是软件开发者。

  不过自从乔布斯后期将Unix BSD作为苹果电脑的底层操作系统以来,OS X与Linux共享了相同的遗产。这意味着与以前相比,开发者有着更多相同的共性。当然它们也有一个相同的敌人:Windows平台。据Evans的调查显示,Windows平台目前仍然吸引着超过80%的开发人员。

  与Linux及OS X开发者的交流显示,每一个群体都有着他们自己的偏好。Linux开发人员喜爱这款系统的低成本,这不仅是指操作系统本身(免费),同时也涉及他们所使用的硬件(价格低廉),更不用说另有一大堆真正的开源共享内容供他们使用了。OS X开发者们则喜欢其接口的简单性,更不必说他们能够为最新的苹果设备创建非常酷的应用了。

  Linux程序员像那些在车库中收藏老爷车的人,他们绝不会让修理工碰他们的收藏品。

  除此之外,值得一提的是,Evans的调查报告仅涉及到了开发平台,而没有涉及部署平台;Linux在服务器操作系统领域的地位还没有受到挑战。Evans的报告称:“以Linux系统作为主要部署平台的开发者在数量是Mac的两倍多。

  同样,Linux与OS X的开发者们也都承认他们所选择的开发平台存在缺点。ZapThink的高级分析师Erich Oliphant称:“瑕疵总是不可避免的。几年之前,在Mac机上存在Java问题,其原因是苹果与Sun对的标准的理解有所不同。”

  通过去年年底由苹果与甲骨文联合发表的OpenJDK声明,上述问题至少看起来已经得到了解决,但Oliphant所提出的另一大挑战仍然存在,那就是应用开发工作的完善性一直是一个活动的目标。

${PageNumber}

  为什么开发人员喜欢Linux

  两大重要因素让开发者们一直忠爱Linux:成本与性能。这并不是说OS X系统的性能就差。但对于那些想进行完善的程序员们而言,他们不想在苹果或微软处理之前问题前一直等待下去,他们希望自己动手解决这些问题,而Linux系统在这方面做的非常不错Linux程序员像那些在车库中收藏老爷车的人,他们绝不会让修理工碰他们的收藏品。

  Steve Bougerolle是温哥华的一名独立Linux顾问兼软件开发者。虽然他最初是一名用Fortran做系统编程的物理学家(并当过IT经理),但Linux编程工作成为了他的专长。“它非常的灵活。我经常能够找到一个方法来做我想做的东西。我对自己做的项目拥有完全的掌控能力,而这一点在Windows或OS X系统上几乎不可想象。”

  北卡罗来纳州夏洛特市Skookum数字化工程公司的首席创意官Josh Oakhurst同时也是定制Web和移动应用的开发者。他对此也表示赞同。他称:“Linux系统不太适合那些不打算在项目中花费过多心力的人士。如果大家只想为自己的时髦软件找一些美观的解决方案,那么Mac无疑是非常好的选择。”

  那么为什么要使用Linux?因为它是一个目标。Oakhurst称:“Linux系统运行着我们的网站,而且它仍然是生产环境的实际平台。如果大家连顺畅管理运行着Linux系统的自有计算机都做不到,又如何能指望在运行并管理Linux网站方面带来真正的高可用性?”

  Skookum公司开发人员Corey Ballou对此也表示认同。他称:“我喜欢在这套系统上工作,建立系统架构、进行优化、改善可扩展性什么的。Linux吸引我的地方在于,我在其中挖掘地越深,就越善于解决可能出现的种种问题。对我个人而言,内在尝试比接口更为重要。”

  一点也不奇怪,因为仍然有成本问题。大多数Linux发行版是免费的(尽管你也可以出额外的钱以获得支持服务)。其硬件也不贵,可以是组装机或是便宜的台式机。

  相比之下,苹果的硬件就要昂贵的多。Bougerolle对此非常不满,“硬件成本基本达到两倍左右” 。他称,一台苹果计算机的售价,足够让他买两台笔记本电脑,外加一套备份系统。不少开发人员都不愿意为这套“时尚软件的美观解决方案”支付这笔额外的费用。

${PageNumber}

  为什么开发者喜欢苹果OS X

  William Horvath非常理解开发者们喜欢Linux的原因,因为他就曾是其中一员。但现在他已经为苹果所倾倒。他称:“我几年之前从Linux转向了OS X,直到今天我也从未感到后悔。”他目前是俄亥俄州托莱多市DoX系统公司的总裁办主任,该公司主要为小型企业开发商务管理工具。

  Horvath解释称:“我不想让自己的日常生活完全被工作所占据,我这个人并不极端,我们平时也会用一些Linux设备,而且Ubuntu确实对用户非常友好。不过当我安装一款软件开发工具时,我真的很讨厌对主文件进行重新配置,直接用上必要的功能不好吗?生活就应该轻松一些。”

  对于另一些开发者来说,苹果硬件所带来的额外支出也是物有所值。Ries van Twisk五年来一直以自动软件工程师为职业。他目的住在一个距离厄瓜多尔首都基多近二十分钟路的小镇上,主要在通过一台iMac机为OS X系统进行开发。他对自己计算机的高集成度与多功能融于一身的特性十分满意,他称:“在我生活的这个地方,总是跑去买周边设备显然不太现实。”

  Van Twisk同样对苹果硬件带来的优雅体验赞不绝口。他称:“最值得称道的是他们将一切都放进了一台设备。”同时他还表示普通个人电脑的风扇噪音让他难以忍受,而Mac机安静的状态能让他更专注于自己的工作。“我们当然希望能将全部精力集中在工作上,而不是分散一些去关注设备。”

${PageNumber}

  共性与难题

  由于同是出于Unix门下,Linux与OS X系统之间自然是共性大于差异——这种情况也转化为不少软件开发机构的优势。

  俄勒冈州波特兰市的Avatron软件公司首席执行官Dave Howell喜欢雇用Linux和OS X开发者,以打造运行于苹果移动设备上的iOS应用程序。

  “Linux系统在概念上与BSD Unix非常接近,而后者正是OS X与iOS系统的基础。因此Linux程序员通常能够顺畅地过渡到iOS框架下的开发工作中,”Howell指出。

  “Linux工程师对于开源领域通常非常熟悉,”他继续说道,“这使得他们非常善于借鉴某些在OS X与iOS中不常用到的技术资源。”

  与此同时,开发者们也承认自己最喜欢的开发系统往往无法百分之百解决其面临的问题。

  例如,去年苹果正式宣布将与甲骨文(也就是Java的持有者)就OpenJDK展开合作,以保证Java开发工作能够在OS X系统上顺畅进行。但DoX系统公司的Horvath仍然抱怨称Java在OS X上的发布要迟于Linux版本,而且OS X至今仍不具备Java USB库。“这只是些微不足道的小事,为什么不能做好呢?”

  除此之外,他还希望OS X系统中的桌面虚拟化能变得更易于实现;他同时表示自己很想选择AppleMail之外的其它邮件客户端。

  而在Linux一边,Bougerolle则指出,“总有些小小的麻烦让我们不得不为之绞尽脑汁。比方说,在我的Linux版本当中,GNU图像处理程序(简称GIMP)只能实现全屏截图,而无法搞定当前窗口截图。OS X系统就没有这类低级失误。”

${PageNumber}

  哪种方案有可能被市场淘汰出局?

  在桌面计算出现的最初那段时光,每款操作系统都有自己的死忠、捍卫者与反对者,如今这种情况也没发生什么变化。但事实是,由于微软Windows系统的统治地位、云计算的兴起以及移动计算业务的激增,使用哪套开发平台也许已经不那么重要了。

  要说改变的话,开发者们倒的确获得了前所未有的开发灵活性。“云平台将开发平台与部署平台之间的距离进一步拉开,”IDC的Hilwa指出。“这种导向驱使(开发工作)向更加多样化的平台发展,因为客户机根本无关紧要,我们所写的代码会运行在别处。”

  Horvath也表示赞同:“基于浏览器的系统是一款单独的平台。用户将得到同样的使用体验。松散的耦合方式使得应用程序将表现层与数据层及传输层彼此分离。应用程序的耦合方式越松散,与后端的联系就越容易。乐于关注UI效果的家伙根本不用考虑后台发生了什么。”

  开发者们很可能为OS X系统所吸引,因为他们不仅希望为最新最酷的设备做软件设计,更重要的是iOS领域对开发者的强烈需求。

  Hilwa称:不少开发人员都已经在以兼职或是全职的形式从事当下最流行的移动开发工作。这使得开发者们不得不使用苹果的iOS开发工具。我们可以在Mac机上运行任何一款操作系统,但却无法在其它计算机上运行OS X。开发者们喜爱这种复合型开发工作。”(例外:Hackintosh倒是能实现这一目标,但极为复杂难使。)

  Avatron公司的Dave Howell同样认为这其中包含了某种自我意识。“Linux开发工作一般针对服务器上运行的软件,开发者的名字自然无从表现。而开发运行于手机及平板设备的iOS应用程序则不同,我们大可以将成果向朋友们展示。”

  除去投机心理,有一个事实仍然无法忽视。无论开发者们喜欢使用云终端,抑或是偏爱iPhone前端(当然也包括以Linux为基础的Android设备),计算能力与相关机遇都必然会继续扩大。而发展的结果又引发我们各自的偏好,并带来大量的工作岗位。

  Bougerolle 称:“说Linux‘走势看低’,就意味着某种竞争机制已经出现。在现实中,两个社区是紧密相连的。有些人喜欢风格更加鲜明且可靠性强大的苹果桌面系统。另一些则偏好价格低廉且某些方面灵活性超高的Linux桌面系统——甚至有一些还宁愿直接使用根本没有桌面系统的终端界面。”

  正如Bougerolle所看到的一样,“开发者们任何转换平台的做法都未必是因为新平台的开发环境就一定好于原有平台,更多时候他们只是更偏好新的用户界面罢了。”(

0
相关文章