Кен Косиенда

Творческий отбор. Как создавались лучшие продукты Apple во времена Стива Джобса

Для CDK и JGK

Введение

Эта книга — о тех пятнадцати годах, которые я проработал в Apple, стараясь создать отличное программное обеспечение, и историях и наблюдениях из тех времен, которыми хотел бы поделиться. Если вам интересно узнать, каково это — показывать демоверсию программы Стиву Джобсу [Создатель, бывший CEO и председатель совета директоров компании Apple. — Прим. ред.], или как появилась сенсорная клавиатура iPhone, или что делает продукцию Apple особенной, — моя книга для вас.

Я расскажу вам о том, каково это — быть программистом в Apple, о плюсах и минусах работы в компании с такими высокими требованиями, о радости, которую мы, программисты, испытываем, заставляя компьютер сделать что-то, добиваясь этого один на один с клавиатурой, используя только силу своего ума.

...

Я расскажу вам о сообществе программистов Apple, частью которого я стал, и о том, как маленькая группа странноватых интровертов, у которых были лишь мечты, идеи и намерения, создала веб-браузер и операционную систему для смартфонов с сенсорными экранами.

Я расскажу вам о том, как программисты вписываются в глобальную систему разработки ПО [Сокр. от «программное обеспечение». — Прим. ред.] Apple, о радостях работы с дизайнерами, чьи доработки делают наши приложения более элегантными, и о стрессе во время показа своей работы коллегам, менеджерам и руководителям, постоянно требующим улучшений, которых, кажется, невозможно достичь.

В создании продукции Apple есть много аспектов: техническая эстетика, проектирование аппаратных платформ, маркетинг, юридические вопросы, управление обширной международной цепочкой поставок — и это только некоторые из них. Но чтобы понимать, что делает компанию Apple тем, чем она является, чтобы понять ее сущность, нужно разбираться в программном обеспечении, и я проведу вас в мир, где обитают программисты, покажу, как с нуля создаются программы и как мы вкладываем в них душу. В то время как другие компании разрабатывают красивое «железо», добиваются успехов в маркетинге, нанимают хороших юристов и производят гаджеты один за другим, ни одна из них не выпускает программного обеспечения, которое было бы интуитивно понятным, тщательно разработанным или попросту приносящим удовольствие. Если в продукции Apple и есть какая-то присущая только ей магия, то это ее ПО, и я расскажу вам, как мы создавали некоторые самые важные программные продукты в истории компании.

Я пришел на работу в Apple в 2001 году, когда главной продукцией компании все еще были компьютеры и ноутбуки, цветной iMac успешно восстановил ее репутацию лидера в высоких технологиях, а Стив Джобс уже четыре года как вернулся после одиннадцатилетнего изгнания [Из-за критических разногласий с занимавшим тогда пост президента Apple Джоном Скалли в 1985 году Джобс ушел из компании по требованию совета директоров. В 1996 году Apple купила основанную Джобсом компанию NeXT, и Стив вернулся к руководству. — Прим. ред.]. Но Apple все еще имела менее 5 процентов рынка, на котором доминировала Microsoft. Разумеется, в компании были влюбленные в работу энтузиасты, но для всех остальных Mac был компьютером, которым можно пользоваться, пока учишься в колледже, но который сразу же бросаешь, повзрослев и устроившись на работу.

Спустя четыре месяца после начала моей работы в Apple начались изменения. Выход iPod стал для меня таким же сюрпризом, как и для всех остальных, и этот портативный музыкальный плеер обозначил начало смены курса Apple от компьютеров к персональным устройствам. Благодаря iPod доверие к компании выросло, а приток финансов обеспечил создание новых очень популярных устройств. Венчал этот список iPhone, превративший Apple из технического статиста в одно из самых высокорентабельных предприятий.

Я был свидетелем и участником этих событий, этих изменений. Я начал писать программы для iPhone, когда все программисты и разработчики этого секретного проекта могли уместиться в маленькой комнате для совещаний. Если вы спросите меня о первом iPad, мне в голову придет К48 — внутреннее кодовое название, которое мы использовали до того, как Стив Джобс и отдел маркетинга придумали настоящее. Сегодня, в тот день, когда я пишу это предисловие, сотни миллионов людей будут пользоваться продукцией Apple. А если посчитать еще и браузеры, работающие в Windows и Google Android, где применяется код, основанный на коде Safari, который я помогал разрабатывать, то число тех, кто пользуется плодами этих трудов каждый день, перевалит за миллиард, и даже приблизится к двум.

Тем не менее мы никогда не думали о таких огромных числах. Мы были слишком заняты, занимаясь разными деталями. Каждый день в Apple был похож на возвращение в школу или в университет дизайна и высоких технологий, где ты глубоко погружен в учебу, а экзамен может случиться в любой день. При такой напряженности нужно было все делать правильно, и, сами того не планируя, мы создали действительно эффективный подход к разработке программного обеспечения.

Моя цель — поделиться этим подходом с вами, то есть объяснить, как мы работали. Для начала я выделил семь элементов, особенно важных для успешной разработки программного обеспечения в Apple.


1. Вдохновение — мыслить масштабно и представлять, что из задуманного можно воплотить в жизнь.

2. Сотрудничество — работать вместе с другими людьми и стараться задействовать сильные стороны каждого.

3. Профессиональное мастерство — применять свои навыки для достижения высококачественных результатов и всегда стремиться сделать лучше.

4. Усердие — выполнять необходимую тяжелую работу и не искать легких путей или полумер.

5. Решительность — делать трудный выбор и избегать отставания от графика или откладывания.

6. Вкус — научиться чутко воспринимать нюансы и добиться равновесия, чтобы все было связано воедино и приятно.

7. Эмпатия — умение поставить себя на место другого, то есть стараться увидеть мир с точки зрения других людей и создать то, что подойдет их жизни, подстроится под их нужды.


На свете не существует никаких корпоративных учебников, в которых описывались бы эти элементы. Никто не выдает этот список во время обучения новых сотрудников. Нет никаких знаков, начертанных на стенах кампуса Купертино и призывающих нас сотрудничать. Напротив, мы чувствовали, что применение четкой методологии может задушить на корню то новаторство, к которому мы стремимся. Таким образом, наш подход вытекает из самой работы. Он движется сверху вниз, беря свое начало в непререкаемом авторитете и бескомпромиссном видении Стива Джобса, и начинается он с нуля, с ежедневного труда разработчиков и программистов, о которых вы никогда не слышали, таких людей, как я и мои коллеги. Кое о ком из них я вам и собираюсь рассказать.

...

Но если вы думаете, что прочтете руководство о «Семи вещах, которые сделали Apple великой», то вынужден вас разочаровать: вы увидите, что работа в стиле Apple — это не действия по списку. Я надеюсь, что вы это увидите.

Вы могли взять в руки эту книгу по многим причинам. Не исключено, что среди них было желание посмотреть на то, как работает образцовая американская компания с точки зрения ее сотрудников, услышать байки о вашей любимой продукции Apple или узнать что-то о доступном пониманию лишь посвященных в мастерство разработки ПО.

Эти семь главных элементов — квинтэссенция того, что мы делаем каждый день, и при этом они представляют собой открытия, потребовавшие много времени. Очень важная составляющая этой книги — рассказ о создании творческих методов, ставших побочным продуктом нашей основной работы. В то время как все мы занимались созданием продукта, мы разрабатывали подход к разработке классного программного обеспечения. Это было эволюцией, мы решали конкретные задачи, но при этом всегда представляли цель. Мы никогда не ждали озарений, одним махом решающих проблему, и моментов, где можно было крикнуть: «Эврика!», у нас было очень мало. Даже когда мне в голову приходила прорывная идея — подробнее я расскажу об этом дальше, — я, разумеется, не бегал по кампусу Apple голышом, как это предположительно происходило с Архимедом. Вместо этого мы двигались вперед как группа, продумывая каждый шаг, и шли от поставленной задачи по разработке демоверсии к поступлению продукта в продажу, принимая каждую многообещающую идею и стараясь все улучшить. Мы смешивали все эти семь основополагающих элементов и формировали из них «молекулы», соединяя вдохновение и решительность, чтобы создать первые прототипы, или сочетали сотрудничество, мастерство и понимание, чтобы дать подробную обратную связь товарищу по команде. Иногда мы объединяли усердие и сопереживание, стараясь создать программное обеспечение, которое люди могли бы использовать, не напрягая голову. Выполняя эту работу, смешивая и соединяя наши основные семь элементов, мы всегда добавляли к ним что-то личное, октэссенцию [Во вселенной комиксов Marvel, восьмерка могущественных божеств, сверхчеловечески сильных персонажей. — Прим. пер.], и, собрав вместе наши цели, идеи и усилия, наши элементы, молекулы и личное отношение, мы создали подход, который я называю «творческий отбор».