Featured image of post 苹果的错误

苹果的错误

App Store 审核机制伤害了开发者与苹果关系

📚 返回 Paul Graham 文章目录

苹果的错误

想要创业?来申请 Y Combinator 的投资吧。

2009年11月

我不认为苹果真正意识到 App Store 审核流程有多么糟糕。或者更准确地说,我不认为他们意识到这个漏洞有多严重。

苹果运营 App Store 的方式,已经比他们以往任何行为更严重地损害了他们在程序员中的声誉。苹果曾经在程序员群体中的口碑非常好。过去,关于苹果最常见的批评是他们的粉丝对其盲目崇拜。而 App Store 改变了这一点。如今,很多程序员开始把苹果视为邪恶。

苹果因 App Store 流失了多少程序员的好感?三分之一?一半?而这还只是开始。App Store 就像一个持续的“业力泄漏”。


苹果是怎么陷入这个困境的?根本原因在于他们不理解软件。

他们把 iPhone 应用当成 iTunes 音乐来对待。苹果是渠道;用户归他们所有;如果你想触达用户,就得按他们的规则来。唱片公司勉强接受了这种模式。但这种模式在软件行业行不通。中间商无法“拥有”用户。早在20世纪80年代初,软件行业就明白了这一点。像 VisiCorp 这样的公司证明了,虽然“软件”和“出版商”这两个词能组合在一起,但其底层概念并不相容。软件不像音乐或书籍。它过于复杂,第三方无法真正作为开发者与用户之间的中介。然而,这正是苹果想通过 App Store 做的:充当软件出版商。而且是一个极度干涉的出版商,有着挑剔的口味和严格执行的内部风格。

如果软件出版在1980年就行不通,那么在今天就更行不通。因为软件开发已经从少数大型发布演变成持续的小步快跑。而苹果同样没有理解这一点。他们的产品开发模式源自硬件:打磨到他们认为完成,再发布。硬件确实必须如此,但软件可以随时更新,因而能从迭代中获益。如今应用开发的标准方法是快速上线、快速迭代。但如果每次发布新版本都要遭遇漫长且随机的延迟,这无疑是灾难性的。

显然,苹果的态度是:开发者在提交新版本时应该更谨慎。他们当然会这么说。但无论苹果多么强大,他们也不可能逆转技术进化。程序员之所以采用“快速上线、快速迭代”,不是因为懒惰,而是因为这种方式能带来最佳结果。苹果阻碍这一过程,逼迫程序员产出劣质作品,而程序员对此的厌恶程度丝毫不亚于苹果。

试想,如果苹果发现 OS X 中存在严重 bug,却不能立即发布更新,而是必须将代码交给某个中间商,等他压着一个月后再因为某个图标不合口味而拒绝,苹果会作何感想?

苹果破坏软件开发流程,结果正好适得其反:App Store 上架的版本往往是陈旧且充满漏洞的。某位开发者告诉我:他们的审核机制让 App Store 充斥着半成品。我几乎每天都会发布新版本给测试用户,但 App Store 上的版本却又旧又糟。我敢说很多开发者都有类似感受:一方面觉得“我对 App Store 上的版本并不自豪”,另一方面又觉得“这真的是苹果的错”。另一位写道:我相信他们认为审核机制是为了保障用户质量。但事实上,我们的 bug 一样能通过审核,而修复却得等4-8周才能上线,让用户误以为 iPhone 应用就是时常不好用。更糟糕的是,在其他平台上,这些应用因为即时审核机制反而能正常运作。其实我猜苹果还有第三个误判:他们觉得 App Store 审核的抱怨不是什么大问题。他们肯定听到了开发者的抱怨。但合作伙伴和供应商抱怨本就是常态。如果没人抱怨,反而说明你对他们太宽松了。与此同时,iPhone 卖得比以往都好。那他们为什么要改?

苹果能在短期内虐待开发者而不受惩罚,是因为他们的硬件实在太优秀了。我前几天刚买了一台新的27英寸 iMac。它太棒了。屏幕反光严重,硬盘噪音也出乎意料地大,但它实在太美了,美到你根本无法在意这些。

所以我还是买了。但这是我第一次带着犹豫购买苹果的产品。那感觉就像在购买一个人权记录不佳国家的商品。过去购买苹果的产品时,那是纯粹的愉悦。“太棒了!他们的东西真好!”而这次更像是一种浮士德式交易。他们的产品确实很好,但他们却是混蛋。我真的还想支持这样的公司吗?


苹果该在意像我这样的人怎么想吗?疏远一小部分用户,又有什么关系?

有几个理由说明他们确实该在意。首先,这些人正是他们想要雇佣的员工。如果你的公司看起来像邪恶帝国,最优秀的程序员就不会为你工作。90年代开始,这对微软就是巨大打击。程序员开始觉得在微软工作有点丢人,像是出卖灵魂。微软员工和其他程序员聊天时提到自己在哪工作,总会自嘲“堕入黑暗面”。但微软真正的问题不在于他们雇到的人感到尴尬,而在于那些他们永远雇不到的人。而你知道谁雇到了他们吗?谷歌和苹果。若微软是帝国,那么他们就是反抗军。而正是因为招揽了更多顶尖人才,谷歌和苹果才能远远领先微软。

为什么程序员对雇主的道德如此挑剔?一部分原因是他们完全有这个资本。最优秀的程序员可以随心选择,他们不必为一家自己心怀芥蒂的公司工作。

另一个原因,我认为,是因为邪恶会滋生愚蠢。一个靠权力取胜的组织,会逐渐丧失靠优秀工作取胜的能力。而聪明人不愿意待在一个“最佳创意并非赢家”的地方。我认为谷歌之所以如此积极地拥抱“不作恶”,与其说是为了取悦外部世界,不如说是为了给自己接种预防针,防止傲慢。[1]

到目前为止,这对谷歌确实奏效了。他们的官僚气息增加了,但依旧大体坚持着最初的原则。而苹果似乎并非如此。再看那部著名的 1984广告,现在更容易想象苹果是屏幕上的独裁者,而不是手持铁锤的女人。[2] 事实上,如果你仔细读独裁者的演讲,会惊人地发现它预言般地符合 App Store:“我们战胜了不负责任的信息传播。我们首次创造了一个纯粹意识形态的花园,每个工人都能在其中安全绽放,不受矛盾与混乱真相的侵扰。”

苹果更该在意程序员的另一点是:平台的成败取决于开发者。若有谁该懂得这一点,那一定是苹果。VisiCalc 成就了 Apple II。

而程序员通常会为自己使用的平台开发应用。大多数应用,甚至可能大多数创业项目,都源于个人项目。苹果自己就是如此。苹果做微型计算机,是因为 Steve Wozniak 想要一台属于自己的。他买不起小型机。[3] 微软也是如此,Bill Gates 和 Paul Allen 一开始是为微机开发解释器,因为他们想用。很少有创业公司会做创始人不用的东西。

iPhone 应用如此之多,主要原因就是程序员们自己都用 iPhone。他们或许在文章里读到 BlackBerry 占据多少市场份额。但实际上,他们的世界里 RIM 根本不存在。要开发东西,首先要自己能用,这就意味着要做 iPhone 应用。

所以程序员们仍然在为 iPhone 开发应用,尽管苹果持续虐待他们。这就像一个人陷入虐待关系,明明受尽折磨却又无法离开。他们太迷恋 iPhone 了。但他们也在寻找出路。一位开发者写道:虽然我确实喜欢为 iPhone 开发,但 App Store 的控制让我丧失了动力。事实上,除非万不得已,我不打算再开发 iPhone 应用了。[4]

这个循环能被打破吗?我没见过哪款设备能做到。Palm 和 RIM 没有希望。唯一有竞争力的对手是 Android。但 Android 是个孤儿;谷歌并没有像苹果对待 iPhone 那样用心。苹果对 iPhone 的投入,就像谷歌对搜索引擎的执着。


未来的移动设备是否会被苹果牢牢锁定?这个前景令人担忧。我们可不想再来一次1990年代的单一生态。1995年,面向终端用户的软件开发几乎等同于开发 Windows 应用。正是对这种前景的恐惧,驱动我们开始 开发Web应用

至少我们现在知道,要打破苹果的封锁,需要让程序员不用 iPhone。如果程序员改用其他设备上网,他们自然就会开始为那个设备开发应用。

怎样才能让程序员更喜欢某款设备而不是 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 对初稿的审阅。

英文版:paulgraham.com/apple.html|中文版:HiJiangChuan.com/paulgraham/124-Apples-Mistake

📚 返回 Paul Graham 文章目录

更新记录:

  • 2025-09-14 HiJiangChuan 初稿翻译,术语待验证;
  • 2025-09-15 重新梳理,修正专业词汇的使用;