WWDC 2014: Философия вместо “золотой формулы”

Создателей первого iPhone мучили сомнения. Даже когда все стало складываться очень неплохо, когда его показ был встречен овациями и он стал главной темой СМИ, сомнения не оставляли их ни на минуту. Яркий взлет, минута (или две) славы и восторга и… пшик. Судьба большинства сенсаций, в том числе и в мире цифровых искусств. Помните NeXTcube? Помните iCube? Уроки судьбы обошлись Стиву очень дорого, но если бы не они судьба iPhone могла быть именно такой.

WWDC 2014: Философия вместо “золотой формулы”. Фото.

Одним из открытий Стива стала “золотая формула”, определяющая идеальные размеры мобильного устройства с тач-интерфейсом на основании размеров и физиологических свойств человеческой ладони.

В этой формуле все было правильно, лишь один неприятный момент был упущен. Вместо разума, публика (то есть, толпа) управляется эмоциями. Её желания иррациональны. Ей не нужны удобства, её неразумным атомам нужно выделяться на общем фон. А оплачивали мобильную вакханалию именно они.

Формула продержалась до iPhone 4s, потом ей пришлось изменить. То что пришло ей на смену и дебютировало вместе с iPhone 5, назовем “серебряной формулой”. Она прожила еще меньше, и подтвердила неготовность действующей философии к еще более другим размерам.

Представляете как были счастливы iOS-разработчики когда им пришлось переделывать приложения, которые, с верой в обещания Apple, размеры экранов считали константой. И задавали координаты экранных элементов напрямую, числами. До iPhone 4s это работало. Адский ад, скрежет зубовный, стоны. Было.

Среда разработки была разработана с учетом “золотой формулы”. То есть, к изменениям размеров устройств она не была приспособлена вообще. У iPad была своя формула, почти не связанная с формулой для iPhone. Вместо того чтобы автоматически перераспределять экранные элементы в отведенном им пространстве, нужно было разрабатывать интерфейс для iPhone и iPad раздельно.

Это продолжение серии про WWDC 2014, предыдущие части здесь:

Первая часть: WWDC 2014: по версии Apple, 25-я WWDC;
Вторая часть: WWDC 2014: Вспоминая QuickDraw 3D;
Третья часть: WWDC 2014: Metal – это очень серьезно;
Четвертая часть: WWDC 2014: Swift;
Пятая часть: WWDC 2014: Непрерывность (Continuity);
Шестая часть: WWDC 2014: Чистилище отменяется.

Жизнь и смерть золотой формулы

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

Но океан бушующих эмоций (публика) все настойчивее требовал устройств с большими размерами экранов, а конкуренты с радостью шли публике навстречу. В 2013 году стало ясно, что даже от “серебряной формулы” придется отказаться. В конце концов, она хоть и наследие Джобса, но не догма.

А чтобы не повторять адский ад и скрежет зубовный, а теперь должна была измениться не только высота (в “портретной” ориентации), но сразу всё, да еще и в двух вариантах, пути отхода с занимаемых позиций начали готовить заранее. Весной или летом 2013 года.

Перед Люком Хистерманом, инженерным менеджером проекта, поставили задачу: “лучшее сохранить, негативные последствия минимизировать, превратить iOS-интерфейс в самый адаптивный интерфейс в отрасли”. Задачи не имеющие решения – это именно то, зачем эти психи (инженеры Apple) шли работать в компанию. 2 июня 2014 года, во второй половине дня, то что у них получилось было впервые представлено участникам WWDC 2014.

Затем, в подробностях, с примерами, тайны “новой философии” раскрыли перед ними на десятке сессий посвященных Adaptability (адаптивности, способности приспосабливаться). На смену золотой и серебряной формулам в iOS 8 пришла философия адаптивности, из-за чего Люк Хистерман сравнил масштаб изменений в iOS 8 SDK с масштабом создания SDK в 2008 году.

По закону эволюции

WWDC 2014: Философия вместо “золотой формулы”. По закону эволюции. Фото.

Если бы Стив все еще руководил компанией (в роли председателя совета директоров, но это ничего не меняет), он представил бы изменение философии лично. Он не упустил бы возможность красиво и убедительно подтвердить интеллектуальное превосходство Apple, напомнив что естественный отбор оставляет в живых организмы которые лучше других умеют приспосабливаться к изменяющимся условиям.

И сколь бы не были мощны динозавры, царившие на планете сотни миллионов лет, закон эволюции не пощадил даже их.

Узнав про заявление Люка Хистермана, эксперты посчитали показателем масштаба iOS 8 числа: 4000 новых API (рекордно много), и едва ли не еще большее число API объявленных в iOS 8 устаревшими (еще один рекорд). Но Люк имел в виду именно изменение философии SDK, смещение акцентов и наступление новой эпохи в истории iOS.

Но Стива не было. Никто ничего публике не объяснил.

Все уже было

Задолго до iOS 8, программные средства для реагирования на изменение размеров уже работали в Android и Windows Phone. Число размеров устройств на этих платформах уже давно превысило все мыслимые пределы. Клиентам это нравилось, они за это платили, и в 2014 или 2015, добираясь на работу (а в метро что-то случилось, сгорели какие-то кабели, и ехать пришлось в битком набитом 27 троллейбусе) мужик напротив меня прижимал к уху устройство размером с малую саперную лопату, и сообщал начальнику что задержится.

WWDC 2014: Философия вместо “золотой формулы”. Все уже было. Фото.

Рука у него была огромная, но даже для него, как мне показалось, этот трюк легким не был. Но его лицо светилось от гордости за себя и за своего цифрового друга.

А чтобы облегчить жизнь разработчикам, экранные элементы на таких устройствах просто отодвигались друг от друга.

Философия адаптации к изменяющимся условиям позволяла применять старые добрые рецепты в новых условиях, ориентируясь не на тип устройства и его ориентацию, а на целую систему отношений между объектами нескольких классов для принятия верных решений.

Первой реакцией на Adaptability со стороны экспертов с “другой стороны” были вовсе не обвинения Apple в воровстве. Они поражались сложности придуманного, предсказывали неработоспособность подобной системы. Почти не ошиблись – проблем было много.

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

Как и следовало ожидать, механизм заработал, но без сбоев не обошлось. До его дебюта оставалось три с половиной месяца, официально зарегистрированные iOS-разработчики пробовали этот механизм в полевых условиях и в полной тайне (подписка о неразглашении не штука, санкции за нарушения лютые), сообщали о найденых багах. С каждой новой бета-версией механизм сыпался все реже, а в последней бете, по-моему, он уже работал идеально. К выходу iPhone с нетипичными типоразмерами все было готово.

Технические подробности про Adaptability я отложил на будущее. Когда-нибудь, когда дойдут руки, я о них напишу. Когда – не знаю.

Продолжение следует

iPhone 4SИстория AppleРазработка приложений для iOS