English Version

苹果的错误

2009年11月

我认为苹果没有意识到App Store审批流程有多糟糕。或者说,我认为他们没有意识到这有多重要。

苹果运营App Store的方式损害了他们在程序员中的声誉,超过了他们做过的任何其他事情。他们在程序员中的声誉曾经很好。过去你听到的关于苹果最常见的抱怨是,他们的粉丝盲目崇拜他们。App Store改变了这一点。现在很多程序员开始把苹果视为邪恶。

苹果曾经与程序员之间的良好意愿有多少因为App Store而丧失了?三分之一?一半?而这还只是到目前为止。App Store是一个持续的因果报应泄露。

苹果是如何陷入这个混乱局面的?

他们的根本问题是他们不理解软件。

他们对待iPhone应用就像对待他们通过iTunes销售的音乐一样。苹果是渠道;他们拥有用户;如果你想接触用户,你就必须按照他们的条件来做。唱片公司勉强同意了。但这种模式不适用于软件。中介拥有用户是行不通的。软件业在1980年代初期就认识到这一点,当时像VisiCorp这样的公司表明,虽然"软件"和"出版商"这两个词很契合,但基本概念并不契合。软件不像音乐或书籍。对于第三方来说,作为开发者和用户之间的中介太复杂了。然而,这正是苹果通过App Store试图成为的:软件出版商。而且是一个特别越界的出版商,有着挑剔的品味和严格执行的内部风格。

如果软件出版在1980年行不通,那么在软件开发从少数大型发布演变为持续的小型发布流的今天,它就更行不通了。但苹果也不理解这一点。他们的产品开发模式来自硬件。他们工作直到认为产品完成,然后发布。对于硬件你必须这样做,但因为软件很容易改变,其设计可以从进化中受益。现在开发应用程序的标准方式是快速发布和迭代。这意味着每次发布新版本时都有漫长而随机的延迟是灾难性的。

显然,苹果的态度是开发者在向App Store提交新版本时应该更加小心。他们会这么说。但尽管他们很强大,却不足以扭转技术的演变。程序员使用快速发布和迭代不是出于懒惰。他们使用它是因为它能产生最好的结果。通过阻碍这个过程,苹果让他们做糟糕的工作,程序员讨厌这一点,就像苹果自己讨厌一样。

如果苹果在发现OS X中的严重错误时,不能立即发布软件更新,而是必须将代码提交给一个中介,这个中介将代码搁置一个月,然后因为它包含一个他们不喜欢的图标而拒绝它,苹果会喜欢吗?

通过破坏软件开发,苹果得到了与他们意图相反的结果:当前在App Store中可用的应用版本往往是旧的和有错误的。一个开发者告诉我:“由于他们的流程,App Store充满了半成品应用程序。我几乎每天都制作一个新版本发布给测试用户。App Store上的版本感觉老旧和糟糕。”

我相信很多开发者都有这种感觉:一种情绪是"我并不真正为App Store里的东西感到骄傲",另一种情绪是"说真的,这是苹果的错。"

另一个人写道:“我认为他们认为审批流程通过确保质量来帮助用户。实际上,像我们这样的错误总是能通过,然后需要4-8周才能让这个错误修复得到批准,让用户认为iPhone应用有时就是无法工作。对苹果来说更糟糕的是,这些应用在其他有即时审批流程的平台上工作得很好。”

实际上,我认为苹果有第三个误解:所有关于App Store审批的抱怨都不是一个严重的问题。他们肯定听到开发者在抱怨。但合作伙伴和供应商总是在抱怨。如果他们不抱怨反而是个坏迹象;这意味着你对他们太宽松了。同时,iPhone的销售情况比以往任何时候都好。那么他们为什么需要修复任何东西呢?

他们在短期内能够虐待开发者,是因为他们制造了如此出色的硬件。几天前我刚买了一台新的27英寸iMac。它很棒。屏幕太亮了,磁盘出奇地响,但它如此美丽,让你无法让自己在意。

所以我买了它,但这次是带着疑虑买的。我感觉就像购买一个人权记录不佳的国家制造的东西时的感觉。这是新的。过去我从苹果买东西时是一种纯粹的快乐。哦,天啊!他们制造了这么棒的东西。这次感觉像是浮士德式的交易。他们制造了这么棒的东西,但他们却是如此混蛋。我真的想支持这家公司吗?

苹果应该关心像我这样的人的想法吗?

如果他们疏远了一小部分用户,这有什么区别?

有几个原因他们应该关心。一个是这些用户是他们想要作为员工的人。如果你的公司看起来邪恶,最好的程序员不会为你工作。从90年代开始,这对微软伤害很大。程序员开始为在那里工作感到尴尬。感觉像是出卖自己。当微软的人和其他程序员交谈并提到他们工作的地方时,有很多关于"投靠黑暗面"的自嘲笑话。

但对微软来说真正的问题不是他们雇用的人的尴尬。而是他们从未得到的人。你知道谁得到了他们吗?谷歌和苹果。如果微软是帝国,他们就是反抗军联盟。谷歌和苹果今天比微软做得好得多,很大程度上是因为他们得到了更多最好的人才。

为什么程序员对雇主的道德如此挑剔?部分原因是他们有能力挑剔。最好的程序员可以在任何他们想的地方工作。他们不必为他们有疑虑的公司工作。

但我认为程序员挑剔的另一个原因是邪恶滋生愚蠢。一个通过行使权力获胜的组织开始失去通过做更好的工作获胜的能力。对于一个聪明人来说,在一个最好的想法不是获胜的想法的地方工作并不有趣。我认为谷歌如此热衷于"不作恶"的原因,与其说是为了给外界留下印象,不如说是为了预防自己变得傲慢。

迄今为止,这对谷歌有效。他们变得更加官僚化,但除此之外,他们似乎坚持了原来的原则。苹果似乎不太如此。当你现在看著名的1984年广告时,更容易想象苹果是屏幕上的独裁者,而不是拿着锤子的女人。事实上,如果你阅读独裁者的演讲,它听起来与App Store的预言惊人地相似:“我们已经战胜了无原则的事实传播。我们已经在历史上第一次创造了一个纯粹思想的花园,每个工人都可以在那里不受矛盾和混乱真理的害虫侵扰而安全地绽放。”

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

程序员为他们使用的平台构建应用程序。大多数应用程序——大多数创业公司,可能——都源自个人项目。苹果本身就是这样。苹果制造微型计算机是因为史蒂夫·沃兹尼亚克自己想要一个。他买不起小型计算机。微软同样开始为微型计算机制作解释器,因为比尔·盖茨和保罗·艾伦有兴趣使用它们。不构建创始人使用的东西的创业公司是罕见的。

有这么多iPhone应用的主要原因是这么多程序员有iPhone。他们可能从文章中知道黑莓有这样那样的市场份额。但实际上就好像RIM不存在一样。如果他们要构建什么东西,他们希望自己能够使用它,这意味着构建iPhone应用。

所以程序员继续开发iPhone应用,尽管苹果继续虐待他们。他们就像陷入虐待关系中的人。他们被iPhone如此吸引,无法离开。但他们在寻找出路。一个人写道:“虽然我确实很享受为iPhone开发,但他们在App Store上施加的控制并没有给我开发应用程序的动力。事实上,除非绝对必要,否则我不打算再制作任何iPhone应用程序。”

有什么能打破这个循环吗?

到目前为止我见过的设备都不能。Palm和RIM没有希望。唯一可信的竞争者是Android。但Android是个孤儿;谷歌并不真正关心它,不像苹果关心iPhone那样。苹果关心iPhone就像谷歌关心搜索一样。

手持设备的未来是由苹果锁定的吗?

这是一个令人担忧的前景。会有另一个像我们在1990年代那样的沉闷单一文化是件令人沮丧的事。1995年,为终端用户编写软件实际上等同于编写Windows应用程序。我们对这种前景的恐惧是推动我们开始构建Web应用程序的最大单一因素。

至少我们现在知道要打破苹果的锁定需要什么。你必须让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阅读本文草稿。