Loading...

苹果公司的错误

Original

2009年11月

我认为苹果公司并没有意识到App Store审批流程有多么严重的问题。或者说,他们没有意识到这个问题有多重要。

苹果公司管理App Store的方式已经损害了他们在程序员中的声誉,这比他们做过的任何事情都要严重。他们过去在程序员中的声誉很好。人们最常抱怨的就是苹果的粉丝过于盲目地崇拜他们。但App Store改变了这一切。现在很多程序员开始把苹果视为邪恶的公司。

苹果在程序员中失去了多少善意?三分之一?一半?而这仅仅是到目前为止。App Store就像一个持续的因果报应漏洞。


苹果是如何陷入这种困境的?他们的根本问题是他们不了解软件。

他们将iPhone应用程序的处理方式与他们通过iTunes销售音乐的方式一样。苹果是渠道;他们拥有用户;如果你想接触用户,就必须按照他们的条件进行。唱片公司勉强同意了。但这种模式对于软件来说并不奏效。中间商拥有用户的模式行不通。软件行业在20世纪80年代初就已经学到了这一点,当时像VisiCorp这样的公司表明,尽管"软件"和"出版商"这两个词可以放在一起,但其中的概念并不相符。软件不同于音乐或书籍。对于第三方来说,充当开发者和用户之间的中间人太过复杂。然而,这正是苹果试图通过App Store成为的:一个软件出版商。而且还是一个特别专横的出版商,有着挑剔的品位和严格执行的统一风格。

如果1980年软件出版还不奏效,那么现在软件开发已经从少量的大版本转变为持续的小版本,它就更不可能奏效了。但苹果并不理解这一点。他们的产品开发模式源自硬件。他们一直在研究某件事,直到认为它已经完成,然后才发布。这种做法对硬件来说是必要的,但由于软件变化如此容易,所以它的设计可以从演化中获益。现在开发应用程序的标准方式是快速推出并不断迭代。这意味着每次发布新版本都遭遇长时间的随机延迟是一场灾难。

显然,苹果的态度是开发者在向App Store提交新版本时应该更加谨慎。他们会这么说。但即使他们的实力如此强大,也无法扭转技术发展的潮流。程序员不是出于懒惰而使用快速推出并不断迭代的方式。他们这样做是因为这样可以获得最佳结果。通过阻碍这个过程,苹果正在迫使他们做出糟糕的工作,而程序员会像苹果一样讨厌这种情况。

如果苹果在发现OS X中有严重的bug时,不是立即发布软件更新,而是必须将代码提交给一个中间人,由他们坐视一个月后拒绝发布,因为里面有一个他们不喜欢的图标,苹果会怎么想?

通过破坏软件开发,苹果得到的恰恰是他们原本想要避免的:App Store中当前可用的应用程序版本往往是旧的和有bug的。一位开发者告诉我:

由于他们的流程,App Store充满了半成品应用程序。我几乎每天都会发布新版本给测试用户。而App Store上的版本感觉很陈旧和糟糕。我相信很多开发者都有这种感觉:一种情绪是"我对App Store上的内容并不太自豪",另一种情绪是"这真的是苹果的错"。

另一位开发者写道:

我相信他们认为他们的审批流程有助于确保用户体验的质量。但事实上,像我们这样的bug也会不时通过审核,然后需要4-8周的时间才能获得批准修复,让用户认为iPhone应用程序有时就是无法正常工作。更糟糕的是,这些应用程序在其他立即批准的平台上却能正常工作。

实际上,我想苹果可能有第三个误解:认为关于App Store审批的所有投诉都不是什么严重问题。他们肯定会听到开发者的抱怨。但合作伙伴和供应商总是在抱怨。如果他们没有抱怨,反而才是一个坏兆头,因为这意味着你对他们太宽容了。与此同时,iPhone的销量比以往任何时候都要好。所以为什么他们需要修复任何东西?

他们能够在短期内忽视开发者,是因为他们制造了如此出色的硬件。我几天前刚买了一台新的27英寸iMac。它太棒了。屏幕有点太亮,硬盘也出乎意料地吵,但它是如此漂亮,以至于你无法在意这些。

所以我买了它,但这是我第一次带着一些顾虑购买。我的感觉就像在一个有着糟糕人权记录的国家购买东西。这是全新的体验。以前当我购买苹果产品时,都是一种纯粹的快乐。哇,他们制造了如此出色的产品!这次感觉就像一个浮士德式的交易。他们制造了如此出色的产品,但他们却是如此的混蛋。我真的想支持这家公司吗?


苹果是否应该关心像我这样的人的想法?他们忽视一小部分用户会有什么影响?

有几个原因他们应该关心。一个是这些用户正是他们想要吸引的员工。如果你的公司看起来很邪恶,最优秀的程序员就不会为你工作。这在20世纪90年代严重伤害了微软。程序员开始觉得在那里工作就像是出卖灵魂。当微软的员工在和其他程序员交谈时提到自己的工作地点,总会有很多自嘲性的笑话,说自己已经"走向了黑暗面"。但微软真正的问题不是他们雇佣的人感到尴尬,而是他们从未得到的人。你知道谁得到了这些人吗?谷歌和苹果。如果微软是帝国,那么他们就是反抗军。正是因为他们吸引了更多最优秀的人才,谷歌和苹果才会比微软做得更好。

为什么程序员对雇主的道德如此挑剔?部分原因是因为他们可以负担得起。最优秀的程序员可以在任何地方工作。他们不必为一家他们有顾虑的公司工作。

但是程序员挑剔的另一个原因是,邪恶会导致愚蠢。一个靠行使权力获胜的组织,会逐渐失去靠做更好的工作获胜的能力。对于一个聪明的人来说,在一个最好的想法并不能获胜的地方工作是不愉快的。我认为谷歌如此热衷于"不作恶"的原因,不是为了给外界留下印象,而是为了给自己注射一针抗傲慢的疫苗。

到目前为止,这对谷歌来说是有效的。他们变得更加官僚,但除此之外,他们似乎仍然坚持自己的初衷。对于苹果来说,情况似乎并非如此。当你现在看那个著名的1984广告时,很容易想象苹果就是屏幕上的独裁者,而不是拿着锤子的女人。事实上,如果你读一读那个独裁者的演讲,它听起来惊人地像是App Store的预言。

我们已经战胜了不道德的事实传播。

我们创造了,在整个历史上第一次,一个纯洁的意识形态花园,在那里每个工人都可以安全地盛开,远离矛盾和令人困惑的真相的害虫。

苹果应该关心程序员对他们的看法的另一个原因是,当你销售一个平台时,开发者就是你的成败关键。如果有人应该知道这一点,那就是苹果。VisiCalc使Apple II成功了。

程序员为他们使用的平台构建应用程序。大多数应用程序——可能是大多数初创公司——都源于个人项目。苹果自己就是如此。苹果制造微型计算机,因为这就是沃兹尼亚克自己想要的。他负担不起一台小型计算机。微软也是从制造小型计算机的解释器开始的,因为比尔·盖茨和保罗·艾伦对使用它们感兴趣。很少有初创公司不是建立创始人自己使用的东西。

iPhone应用程序如此众多的主要原因是,有如此多的程序员拥有iPhone。他们可能知道,因为他们在文章中读到,黑莓有这样那样的市场份额。但实际上,这就好像RIM根本不存在。如果他们要构建某些东西,他们想要能够自己使用它,这意味着构建一个iPhone应用程序。

所以程序员继续开发iPhone应用程序,尽管苹果继续虐待他们。他们就像被困在一段虐待关系中的人。他们如此迷恋iPhone,以至于无法离开。但他们正在寻找一种出路。有人写道:

虽然我确实喜欢为iPhone开发,但他们对App Store的控制并没有给我开发应用程序的动力,事实上,除非绝对必要,否则我不打算再制作任何iPhone应用程序。

有什么能打破这个循环吗?到目前为止,我还没有看到任何设备能做到这一点。Palm和RIM都没有希望。唯一可信的竞争对手是Android。但Android是一个孤儿;谷歌并不真正关心它,不像苹果关心iPhone那样。苹果关心iPhone就像谷歌关心搜索一样。


手持设备的未来是否会被苹果锁定?这是一个令人担忧的前景。拥有另一个像20世纪90年代那样阴郁的垄断局面将是一个遗憾。在1995年,为最终用户编写软件实际上就是编写Windows应用程序。我们对这种前景的恐惧是推动我们开始构建网络应用程序的最重要的因素。

至少我们现在知道,要打破苹果的垄断需要什么。你必须让iPhone从程序员手中拿走。如果程序员使用其他设备进行移动网络访问,他们就会开始为那个设备开发应用程序。

如何才能制造出比iPhone更受程序员喜欢的设备?很难想象你能制造出设计得更好的东西。苹果在这方面已经无可挑剔。所以这种替代设备可能无法凭借普遍吸引力获胜。它可能必须依靠某些特别吸引程序员的优势。

吸引程序员的一种方式是通过软件。如果你能想出程序员必须拥有的某种应用程序,但在iPhone受限的世界里做不到,你就可能让他们转向这种设备。

如果程序员开始将手持设备用作开发机,即手持设备取代笔记本电脑,就像笔记本电脑取代台式机一样,那肯定会发生这种情况。你需要比苹果允许你对iPhone拥有的更多控制权,才能拥有一台开发机。

有人能制造出一种可以像手机一样随身携带的设备,同时又可以作为开发机使用吗?很难想象它会是什么样子。但我已经学会不要对技术说"永远不会"。一种可以作为开发机使用的口袋大小的设备,对于现在的标准来说,并不比1995年的iPhone本身更神奇。

我现在的开发机是一台MacBook Air,我在办公室里使用外接显示器和键盘,在旅行时单独使用。如果有一款尺寸减半的版本,我会更喜欢。那仍然不够小,无法像手机一样随身携带,但我们已经缩小了4倍左右。肯定可以弥补这个差距。事实上,让我们把它列为RFS。需要:拿着锤子的女人。

注释

[1] 当谷歌采用"不作恶"时,他们还很小,没有人会期望他们会这样做。

[2] 1984广告中的独裁者不是微软,而是IBM。在那些日子里,IBM看起来更可怕,但他们对开发者比苹果现在更友好。

[3] 他甚至负担不起一台显示器。这就是为什么Apple I使用电视作为显示器。

[4] 我谈过的几个人都提到了他们非常喜欢iPhone SDK。问题不在于苹果的产品,而在于他们的政策。幸运的是,政策是软件;如果苹果想改变它们,可以立即做到。这很方便,不是吗?

感谢 Sam Altman、Trevor Blackwell、Ross Boucher、James Bracy、Gabor Cselle、Patrick Collison、Jason Freedman、John Gruber、Joe Hewitt、Jessica Livingston、Robert Morris、Teng Siong Ong、Nikhil Pandit、Savraj Singh和Jared Tame在草稿上的阅读。