内容推荐 乔布斯曾宣称苹果核心是一家伟大的软件公司,而创造苹果软件的关键方法就是“创意选择”。苹果核心产品工程师科钦达,从业务一线的视角总结了产品创新的七大要素——灵感、协作、技术、勤奋、决断力、品味、同理心。 这本书将使你看到软件从一堆草稿纸中逐步诞生的过程,以及苹果工程师团队是怎样赋予它们灵魂的。他们自然而然地运用创意选择的方法,在日常工作中潜移默化地团结合作、影响彼此,并传承着苹果富有创造力的企业文化。作者认为,这种传承自上而下,缘于顶层毋庸置疑的权威——不妥协的史蒂夫?乔布斯,也自下而上,始于一群名不见经传的设计师和程序员。 在本书中,你还会了解苹果iPhone、iPad等产品的软件和Safari浏览器背后的开发故事和细节,以及创造苹果独特软件的神秘技艺。 作者简介 肯·科钦达,苹果黄金时代首席iPhone工程师,在苹果工作超过15年,参与了Safari浏览器以及iPhone、iPad、iWatch等产品软件的开发过程。他毕业于耶鲁大学,现居加利福尼亚州圣何塞。 目录 前言 创造卓越软件的方法——创意选择 第1章 向乔布斯做示例演示 史蒂夫可以预言未来 进入密室 苹果的核心圈子 “更多按键”方案与“更大按键”方案 史蒂夫的裁决 史蒂夫的四句话 第2章 初入苹果的第一课 理查德?斯托尔曼 鹦鹉螺 苹果的浏览器替代计划 驯服Mozilla 10x程序员 示例程序法 第3章 第一次“尤里卡时刻” 移植策略 代码与菜谱 修正、重启、报错,不断循环 黑色石碑 灵感与汗水 第4章 乔布斯的标准:速度更快 替代IE浏览器 PLT——软件调试官 优化与速度底线 苹果产品:Safari 乔布斯的演讲 Safari的成功,侥幸吗? 第5章 困境中的挣扎 离开苹果,去谷歌? 成为负责人 孤军奋战的困局 寻求帮助 从“我”到“我们” 第6章 神秘的Purple项目 错误决定 智能手机开发团队 键盘德比大战 苹果风格 第7章 第二次“尤里卡时刻” Newton的噩梦 “胜利之作”的难题 一个按键只放一个字母 自动纠错功能 QWERTY键盘与品味 第8章 收敛阶段 又出错了 自动纠错词库 图像倾斜算法 压力与倒计时 初见iPhone 最后的排查 第9章 革命性产品:iPhone 融合理念 图标的尺寸 用户界面顺畅 删除建议栏 匠心独具 平衡算法与启发 第10章 最后一次向乔布斯做示例演示 木质玩具iPhone iPad键盘示例演示 自己做决定 后记 致谢 注释 序言 创造卓越软件的方法——创意选择 这本书记录了我在苹果15年的奋斗经历,你将看到我 在这15年中为开发卓越的软件而付出的努力,以及与之相 关的故事和我的一些观察。如果你想了解给史蒂夫·乔布 斯做示例程序演示的场景和实际体验,或者iPhone(苹果 手机)的触摸屏键盘为什么会变成现在的样子,或者是什 么塑造了苹果的独特文化,请继续读下去。 我会告诉你当一名苹果软件工程师是怎样的体验:在 一家要求严苛的公司工作,我们必须承担其中的压力和喜 悦;在与孤独为伴、殚精竭虑、不断敲打键盘并成功地让 计算机增加了新功能后,我们这群开发者又会从内心迸发 出欣喜和激动。 作为苹果程序员团队的一员,我将与你分享这个群体 的故事:一小群极其内向的程序员是如何在仅有梦想、目 标的情况下,不断发挥聪明才智,创造出网络浏览器以及 触屏手机操作系统的。 此外,我还将介绍,作为整个苹果产品开发体系的一 部分,程序员们是如何配合其他相关人员的工作的。比如 ,你会了解当设计师将软件的视觉效果和质感变得更加精 致、优雅时,我们感受到的喜悦;你也会感受到在向同事 、主管和不停地提出“无理”要求的高管们展示工作时, 我们承受的重压。 按照苹果的方式打造产品需要很多方面(工业设计、 硬件工程、市场营销、法务以及管理一个庞大的全球供应 链等)的努力,但要理解什么成就了苹果,什么是苹果真 正的精髓,我认为关键在于理解软件。我将带领你走进这 个程序员的栖息地,你会看到软件从一堆草稿纸中逐步诞 生的过程,以及我们怎样赋予它们灵魂。其他公司可能也 会设计外表美观的硬件、在市场营销上投入重金、聘请优 秀的律师、大规模制造相关配件,但没有哪家公司像苹果 一样,用卓越的技术和匠心把软件打造得如此直观,如此 富有趣味。如果说苹果产品有什么神奇的魔力,那么它一 定是软件的功劳,而我将讲述我们是如何创造苹果公司历 史上一些最重要的软件的。 当我2001年刚进入苹果时,台式计算机和笔记本电脑 仍是公司最重要的产品。此时,在经历了11年的“流放” 后,史蒂夫·乔布斯已经回归苹果4年了。尽管当时刚推出 的彩色iMac(苹果电脑)已经使苹果成功地重新回到高科 技领域中产品设计的领先地位,但在微软主导的市场中, 苹果产品的占有率还不到5%。当时的苹果发烧友依然活跃 ,也热衷于苹果推出的产品,然而对于大多数普通消费者 而言,Mac电脑是一台他们离开大学校园、走入社会后就再 也不会使用的计算机。 在我入职苹果公司4个月以后,情况开始发生变化。 iPod(苹果公司设计和销售的系列便携式多功能数字多媒 体播放器)的发布对我和其他人来说都是一个惊喜,iPod 成为苹果产品由计算机开始转型为个人科技产品的强劲推 动力。iPod的成功为公司赚来了现金和更为宝贵的信心, 这些现金和信心支持了其后一系列影响深远的产品的开发 及问世。这一发展趋势不断强化,并随着iPhone的推出到 达顶峰。iPhone使苹果公司从科技领域里一个可有可无的 小角色,成功跻身全球赢利能力最强的企业之一。 我很荣幸能够成为苹果黄金时代的建设者和见证者, 在一间小会议室就足够容纳iPhone这个秘密项目的全体软 件工程师和设计师的时候,我就已经是其中一员了。如果 你问我与第一台iPad(苹果平板电脑)有关的事情,我可 能会把它称为K48——在史蒂夫·乔布斯和市场营销部门敲 定正式产品名称之前,开发人员对其使用的内部代码。就 在我写本书前言的时候,几亿用户都在使用苹果的产品, 如果把基于Safari(苹果浏览器)内核开发的一些在 Windows(微软操作系统)及安卓系统上运行的浏览器的用 户也算上,苹果产品的用户总量早已超过10亿,甚至可能 达到了20亿。 但我们从未把这个庞大的数字放在心上,因为我们的 注意力全部集中在各种各样的细节上。在苹果工作的每一 天,你都像在一所专注于设计专业、以高科技和产品创造 力为核心课程的大学里读书,你做好准备,以应对随时可 能出现的考试。我们始终处于高强度工作的状态,坚持将 每一件事情做到极致,尽管不是刻意地这样做,但经过日 积月累,我们探索出了一种对开发卓越软件非常有效的工 作方法。 我希望与读者分享这种方法,在这里我会详细阐述我 们的工作方法。在讨论这个话题之前,我总结了对苹果软 件的成功有重要影响的7个要素。在苹果,没有任何一本公 司指南会写明以上内容,没有人为新员工总结这个清单, 也没有谁会在苹果公司位于加利福尼亚州库比蒂诺总部的 墙上看到号召大家“精诚协作”的标语。相反,我们认为 ,将一套固定的方法强加到每个人身上,反而可能会扼杀 其本身存在的我们始终孜孜以求的创新能力。因此,我们 的工作方法是在工作过程中潜移默化地影响彼此和传承下 去。这种传承自上而下,来源于最顶层的毋庸置疑的权威 ——永不妥协的史蒂夫·乔布斯;同时也自下而上,来源 于一群你可能从未听说的设计师和程序员,而我 导语 作者科钦达将苹果软件设计、算法、工程实践到了无可附加。他在本书中从一线产品工程师的视角,忠实还原了safari和iPhone、iPad键盘开发的全过程。通过作者细腻、详尽的笔触,我们仿佛置身于苹果公司内部,亲身体验向乔布斯汇报产品示例程序的感受,体会苹果富于创造力的文化,以及见证苹果伟大产品的诞生和创意工程师赋予产品灵魂的过程。 后记 多年来,任职于苹果公司使我的财务状况始终良好, 我从一群才华横溢的同事身上受益良多,并在全球范围内 推广了我的软件。史蒂夫·乔布斯一心一意地专注于制造 伟大的产品,他的远见激励了我,让我的工作一切顺利。 在本书中,我花了很多时间叙述我在苹果的职业生涯 中得到的经验。我在书中写到的最重要的经验就是一个群 体和这个群体创造的文化是如何统一的。史蒂夫去世后, 苹果软件开发文化开始改变。随着时间的流逝和其他同事 的变动,文化发生了更多变化。到2017年我在苹果公司的 最后一天,本书中提到的人大多数都已经离开公司,各奔 前程,更重要的是,我再也没有机会像我在书中讲的那样 一起与他人合作了。在写这篇文章时,我仍然感觉到自己 与苹果、它的产品以及近年来与我共事的人有着紧密的联 系,但现在是时候向前看了。 在辞职前的几星期,我忙于最后一个项目,即伦敦设 计博物馆的展览工作。作为“加利福尼亚:设计自由”展 览的一部分,苹果也将iPhone作为展品,这次展览将展示 美国从20世纪60年代的“反文化”运动到硅谷的高科技对 当时美国西海岸的影响。我的任务是恢复最初的键盘自动 纠错代码,作为我们10年前发明的多点触摸操作系统的一 个案例。我从源代码档案中检索到了这个软件,并使其在 一个现代版本的iOS上运行,这样,一些苹果设计师可以在 为博物馆展览制作高分辨率键盘动画时参考它。我很高兴 看到这段代码,这是我最后一次为它工作了。 现在我已经离开苹果,把大量的时间用在撰写本书上 ,我的思绪转向了未来。 当寻找新问题的新解决方案时,我建议大家使用我提 到过的工具:基本元素、创意选择和围绕它们构建的文化 。当然,你可以使用任何一组工具来完成或优或劣的工作 ,或者使用它们来实现有价值的目标或琐碎的目标。我们 应该明智地选择,因为iPhone展示了一个成功的产品可以 带来的社会影响一—无论好坏。 我想在读者的职业生涯开始时给他们写一封信。你可 能会告诉自已想从事产品开发工作,你可能有在其他领域 做大事的计划。不管怎样,我都要给你提出一些建议:忙 起来。想清楚做一件伟大的工作意味着什么,然后努力实 现它。成功从来不是确定的,努力的过程也绝不容易,但 如果你喜欢正在做的事情,那么它就不再困难。 书评(媒体评论) 我们讲如何做好企业,首先需要弄清楚,产品的 创意、独特性和品质才是赋予企业能量的基石。乔布 斯时代的苹果产品无疑是产品中的翘楚。本书作者科 钦达,真实地从苹果内部人的视角,还原了为这些伟 大产品积累势能的过程。创意选择的方法,值得管理 者、经理人与开发者学习与应用。 ——刘润 苹果老员工的内部视角,为我们展示乔布斯极致 与美的产品主张,是如何往苹果公司内部落地实现的 。 ——梁宁 苹果的产品从硬件到软件都给用户高级流畅的体 验感觉,这又是如何做到的?这本书从内部人的视角给 我们揭开了苹果软件产品开发的秘密。这本书通过细 节展示了乔布斯的核心魅力,他让规模化的创新为苹 果的产品研发保驾护航。iOS输入法之父肯科钦达这本 讲述苹果工程师文化的《创意选择》,值得关注苹果 产品或开发者文化的人读一读。 ——蒋涛 硅谷有两家市值万亿美元左右的公司,一家是谷 歌,一家是苹果,他们做产品的方法却针锋相对,前 者理性,后者感性。这本书可以让我们看到苹果偏感 性的产品决策方式,很有启发,推荐阅读。 ——苏杰 精彩页 史蒂夫可以预言未来 2009年夏末,我正在为当时尚未命名的一款平板电脑开发软件原型。两年多以前,苹果正式推出了iPhone,正如它一经问世便俘获了电子产品发烧友的目光一样,iPhone不断地在大众市场上攻城略地,销售额的增长气势如虹。现在,新的任务—为这一划时代产品的后续升级产品提供软件支持—又落在我们iOS软件开发团队的身上。 其实,我本人从2005年开始就参与了iPhone的研发,在此期间我经历了重重磨难,最终柳暗花明,这些经历我会在第6章中与大家分享,我当时的职责是开发键盘操作软件,该项课题的重中之重正是我负责的自动纠错功能,这一功能可以将你输入的zhen'qur自动纠正为zheng'que。 在Phone的研发过程中,我们很慎重地将键盘操作软件认定为一个科研课题。当着手开发iPhone的触屏操作系统时,我们根本不知道在一片小小的触摸感应玻璃上打字是否具备技术上的可行性,也就是说,我们所做的一切很可能是徒劳的。尽管今天虚拟键盘已随处可见,但当时以黑莓为代表的主流智能手机都配备具有真实击打触感的巧克力键盘,而Phone要配备的是对指尖触摸毫无反馈的极小的虚拟按键。 因此,有效的自动纠错功能十分重要,我自始至终都在担心自己撰写的纠错代码会让iPhone成为科技圈的又一个笑柄。没有一个苹果员工想重蹈Newton(苹果公司于20世纪90年代推出的个人数字助理产品)的覆辙,这个在20世纪90年代曾被苹果寄予厚望的PDA(个人数字助理)产品在问世后惨遭滑铁卢,一厥不振后再无东山再起之日,究其原因,有一大部分要归咎于乏善可陈的文字输人系统,Newton未能像它曾被期待的那样成为普罗大众不可或缺的数码伙伴。苹果公司无处不在的保密制度使我的开发任务更加复杂,“Purple”(紫色)是iPhone项目在研发时的内部代码,与Purple相关的所有细节均受到了必要的信息保护。2007年1月,在史蒂夫的公开演讲前,几乎没有人有机会试用Purple,甚至不能看一眼Purple的操作系统,所以我的键盘项目被视为一个真正的科研课题,在面向消费者之前,我只能在很少的内部使用者口中获得极其有限的反馈信息,这几乎相当于在iPhone上市后才开始在大范围人群中做大规模的使用试验。也许你现在能够理解我的紧张了。 站在“密室”门口,我无暇回顾由iPhone紧张的开发周期带来的压力,我的注意力集中于当下的任务——给史蒂夫做最新版本的示例程序演示。这个将在随后被命名为iPad的平板电脑会使用与iPhone相同的操作系统,但iPad的屏幕更大,这一变化会给键盘操作带来一系列新挑战,我已经做好了其中一个难题的解决方案,并将其展示出来。这样的示例程序演示贯穿了整个苹果软件的开发过程,是一切开发工作的基础。正如我现在正在讲述的iPad软件演示案例一样,你会在本书里看到各种各样的示例程序演示的故事。 在开发Purple智能手机的过程中,我从未向史蒂夫做过示例演示——在组织架构里级别更高的人会承担这项任务。显然,虚拟键盘在iPhone上的成功运用提升了我在公司内部的地位,尽管我的上级并未明说,但在我的能力被事实证明后,他们邀请我与史蒂夫见面的举动使我确信,正是这一功劳让我获得了当面向这位大名鼎鼎的首席执行官史蒂夫·乔布斯汇报的资格。 这是我第二次向史蒂夫做示例演示—第一次发生在短短几个星期之前,当时我向他展示了为iPhone4设计的准备在高分辨率视网膜屏幕上显示的字体选项,那次演示非常顺利,我的再次受邀让我认为自己已经进入需要定期向史蒂夫演示示例程序的核心开发团队,我并不清楚有资格进人这个小圈子的人到底有多少,但我相信人数并不多,可能只有几十。当然,其中还有更核心的小圈子,因为当我还站在走廊等待进入密室的指示时,里面已经有人与史蒂夫促膝长谈了。 史蒂夫是公司里所有圈子的中心。5年来,他两次因身体原因休假,此时他刚刚结束第二次休假,回归公司数月。在身体状况允许时、他会亲自做出关于产品的一切重要决定。不间断地进行示例评审就是他决定苹果软件的界面、观感以及功能的最主要方式。 P3-5 |