Шрифт:
Интервал:
Закладка:
Вы могли взять в руки эту книгу по многим причинам. Не исключено, что среди них было желание посмотреть на то, как работает образцовая американская компания с точки зрения ее сотрудников, услышать байки о вашей любимой продукции Apple или узнать что-то о доступном пониманию лишь посвященных в мастерство разработки ПО.
Эти семь главных элементов — квинтэссенция того, что мы делаем каждый день, и при этом они представляют собой открытия, потребовавшие много времени. Очень важная составляющая этой книги — рассказ о создании творческих методов, ставших побочным продуктом нашей основной работы. В то время как все мы занимались созданием продукта, мы разрабатывали подход к разработке классного программного обеспечения. Это было эволюцией, мы решали конкретные задачи, но при этом всегда представляли цель. Мы никогда не ждали озарений, одним махом решающих проблему, и моментов, где можно было крикнуть: «Эврика!», у нас было очень мало. Даже когда мне в голову приходила прорывная идея — подробнее я расскажу об этом дальше, — я, разумеется, не бегал по кампусу Apple голышом, как это предположительно происходило с Архимедом. Вместо этого мы двигались вперед как группа, продумывая каждый шаг, и шли от поставленной задачи по разработке демоверсии к поступлению продукта в продажу, принимая каждую многообещающую идею и стараясь все улучшить. Мы смешивали все эти семь основополагающих элементов и формировали из них «молекулы», соединяя вдохновение и решительность, чтобы создать первые прототипы, или сочетали сотрудничество, мастерство и понимание, чтобы дать подробную обратную связь товарищу по команде. Иногда мы объединяли усердие и сопереживание, стараясь создать программное обеспечение, которое люди могли бы использовать, не напрягая голову. Выполняя эту работу, смешивая и соединяя наши основные семь элементов, мы всегда добавляли к ним что-то личное, октэссенцию[4], и, собрав вместе наши цели, идеи и усилия, наши элементы, молекулы и личное отношение, мы создали подход, который я называю «творческий отбор».
1. Демонстрация
«Бзззззз!»
Я посмотрел на свой iPhone. Последние полчаса я нервно вертел его в руках. Наконец я получил сообщение, которого ждал.
«В любую минуту», — гласило оно.
«ОК», — написал я в ответ.
Я сидел, подавшись вперед, упершись локтями в колени, неудобно устроившись на кожаном стуле, вполне удобном в обычной ситуации. Это был один из стульев, расставленных на официальном месте встреч около лифтов на втором этаже штаб-квартиры Apple, в здании Infinite Loop 2, Купертино, штат Калифорния. Получив сообщение, я поднялся со стула, опустил iPhone в карман и прошел несколько шагов по тихому коридору, пока не оказался около конференц-зала под названием «Дипломатия». Когда дверь откроется, меня пригласят внутрь, чтобы я мог показать свою программу Стиву Джобсу.
Был конец лета 2009 года, и я делал прототипы программного обеспечения для новой продукции — пока еще не имеющего названия планшетного компьютера. Чуть больше двух лет назад компания Apple представила миру iPhone, который практически сразу стал лидером на рынке и за один день получил признание специалистов в сфере IT. Теперь такие люди, как я, программисты iOS, сможем поучаствовать в создании достойного преемника.
С 2005 года я также работал и над iPhone. После всех превратностей судьбы, которые я подробно опишу в главе 6 «Дерби с клавиатурой», мне поручили писать программное обеспечение для клавиатуры iPhone, особое внимание уделив функции автоисправления — коду, который меняет ваше «письмо без очепяток» на «письмо без опечаток».
Во время разработки iPhone мы говорили (и здорово при этом нервничали) об этой клавиатуре как о «научном проекте». Когда мы начали придумывать операционную систему нашего сенсорного телефона, никто не знал, будет ли набор символов на этом реагирующем на прикосновения куске стекла технически возможным или мы ввязались в безнадежную авантюру. В наши дни виртуальные клавиатуры стали широко распространены, но тогда идеалом смартфона был BlackBerry со своей встроенной аппаратной клавиатурой, пластиковыми миниатюрными кнопками и тактильной печатью большими пальцами. В отличие от него, на клавиатуре iPhone были крошечные виртуальные клавиши, не дающие никакой обратной связи, ощущаемой подушечками пальцев.
Эффективная функция автоисправления была первой необходимостью, и я работал, постоянно беспокоясь о том, что мой исправляющий набранное код может сделать с iPhone что-нибудь неожиданное. Никто в Apple не хотел повторения истории с карманным персональным компьютером Newton, выпущенным на рынок в 1990-е годы. Ненадежное программное обеспечение распознавания рукописного текста так навредило репутации Newton в глазах пользователей, что эти КПК никогда хорошо не продавались. Во многом из-за того, что текстовый ввод получился неудачным. Newton так и не стал неотъемлемым товаром для потребительского рынка, как это планировалось.
Мою задачу еще больше осложняла вездесущая секретность Apple. В проекте Purple[5] — кодовое название для разработки iPhone — каждая деталь имела конфиденциальную защиту с уровнями доступа. Очень немногим людям выпал шанс увидеть или попробовать программное обеспечение Purple до того, как Стив объявил о нем на широко освещенной в СМИ презентации в январе 2007 года, поэтому не могло быть и речи о том, чтобы моя работа по клавиатуре развивалась как настоящий научный проект, и о том, чтобы провести для нее широкие испытания. До того, как весь мир увидел ее, я получил отзывы о функции автоисправления всего от нескольких десятков человек. Ясное дело, что мы нервничали.
Пока я стоял в коридоре около «Дипломатии», у меня не было времени размышлять о том, сколько нервов я потратил во время разработки клавиатуры iPhone. Я больше думал о стрессе, который испытывал прямо сейчас, — мне предстояла демонстрация своих достижений перед Стивом. Этот новый планшет, который много месяцев спустя Apple представит как iPad, использовал ту же операционную систему, что и iPhone, но у него был экран побольше. Из-за этого с клавиатурой возник целый ряд новых проблем, и я был готов представить свое решение одной из них. Такие демонстрации лежали в основе процесса разработки программного обеспечения в Apple. Далее в этой книге я еще не раз буду говорить о подобных показах.
Пока разрабатывался наш смартфон Purple, мне никогда не приходилось показывать свою клавиатуру Стиву — кто-то, занимающий более высокую должность в организации, брал на себя эту обязанность.
Похоже, клавиатура работала хорошо, и это сыграло мне на руку. Меня пригласили на встречу со Стивом только после того, как автокоррекция заработала и я как бы зарекомендовал себя. Мне не говорили об этом прямо, это
- Программирование КПК и смартфонов на .NET Compact Framework - Александр Климов - Программирование
- Архитектура операционной системы UNIX (ЛП) - Бах Морис Дж. - Интернет
- Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ - Скотт Майерс - Программирование
- Компьютерра PDA N54 (04.09.2010-10.09.2010) - Компьютерра - Прочая околокомпьтерная литература
- C++ - Мюррей Хилл - Программирование
- Цифровой журнал «Компьютерра» № 192 - Коллектив Авторов - Прочая околокомпьтерная литература
- Google. Прорыв в духе времени - Марк Малсид - Интернет
- Компьютер на 100 %. Начинаем с Windows Vista - Юрий Зозуля - Прочая околокомпьтерная литература
- Компьютер – это просто! - Валерий Алиев - Прочая околокомпьтерная литература
- Журнал PC Magazine/RE №09/2008 - PC Magazine/RE - Прочая околокомпьтерная литература