WWDC 2014: Філософія замість «золотої формули»

Творців першого iPhone мучили сумніви. Навіть коли все стало складатися дуже непогано, коли його показ був зустрінутий оваціями і він став головною темою ЗМІ, сумніви не залишали їх ні на хвилину. Яскравий зліт, хвилина (або дві) слави і захвату і... пшик. Доля більшості сенсацій, в тому числі і в світі цифрових мистецтв. Пам'ятаєте NeXTcube? Пам'ятаєте iCube? Уроки долі обійшлися Стіву дуже дорого, але якби не вони доля iPhone могла бути саме такою.

Одним з відкриттів Стіва стала «золота формула», що визначає ідеальні розміри мобільного пристрою з тач-інтерфейсом на підставі розмірів і фізіологічних властивостей людської долоні.


У цій формулі все було правильно, лише один неприємний момент був втрачений. Замість розуму, публіка (тобто, натовп) управляється емоціями. Її бажання ірраціональні. Їй не потрібні зручності, її нерозумним атомам потрібно виділятися на загальному фон. А оплачували мобільну вакханалію саме вони.

Формула протрималася до 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: Swi
ft; П'ята частина: WWDC 2014: Безперервність (Continui
ty), шоста частина: WWDC 2014: Чистилище скасовується.


Життя і смерть золотої формули

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

Але океан вируючих емоцій (публіка) все наполегливіше вимагав пристроїв з великими розмірами екранів, а конкуренти з радістю йшли публіці назустріч. У 2013 році стало ясно, що навіть від «срібної формули» доведеться відмовитися. Зрештою, вона хоч і спадщина Джобса, але не догма.

А щоб не повторювати пекельне пекло і скрегіт зубовний, а тепер повинна була змінитися не тільки висота (в «портретній» орієнтації), але відразу все, та ще й у двох варіантах, шляхи відходу із займаних позицій почали готувати заздалегідь. Навесні або влітку 2013 року.

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

Потім, у подробицях, з прикладами, таємниці «нової філософії» розкрили перед ними на десятці сесій присвячених Adaptability (адаптивності, здатності пристосовуватися). На зміну золотий і срібній формулам в iOS 8 прийшла філософія адаптивності, через що Люк Хістерман порівняв масштаб змін в iOS 8 SDK з масштабом створення SDK в 2008 році.

За законом еволюції

Якби Стів все ще керував компанією (в ролі голови ради директорів, але це нічого не змінює), він представив би зміну філософії особисто. Він не упустив би можливість красиво і переконливо підтвердити інтелектуальну перевагу Apple, нагадавши що природний відбір залишає в живих організми які краще за інших вміють пристосовуватися до змінюваних умов.

І якби не були потужні динозаври, що панували на планеті сотні мільйонів років, закон еволюції не пощадив навіть їх.


Дізнавшись про заяву Люка Хістермана, експерти вважають показником масштабу iOS 8 числа: 4000 нових API (рекордно багато), і чи не ще більша кількість API оголошених в iOS 8 застарілими (ще один рекорд). Але Люк мав на увазі саме зміну філософії SDK, зміщення акцентів і настання нової епохи в історії iOS.

Але Стіва не було. Ніхто нічого публіці не пояснив.

Все вже було

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

Рука у нього була величезна, але навіть для нього, як мені здалося, цей трюк легким не був. Але його обличчя світилося від гордості за себе і за свого цифрового друга.

А щоб полегшити життя розробникам, екранні елементи на таких пристроях просто відсувалися один від одного.


Філософія адаптації до змінюваних умов дозволяла застосовувати старі добрі рецепти в нових умовах, орієнтуючись не на тип пристрою і його орієнтацію, а на цілу систему відносин між об'єктами декількох класів для прийняття вірних рішень.

Першою реакцією на Adaptability з боку експертів з «іншого боку» були зовсім не звинувачення Apple в крадіжці. Вони вражалися складнощами придуманого, передбачали непрацездатність подібної системи. Майже не помилилися - проблем було багато.

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

Як і слід було очікувати, механізм заробив, але без збоїв не обійшлося. До його дебюту залишалося три з половиною місяці, офіційно зареєстровані iOS-розробники пробували цей механізм в польових умовах і в повній таємниці (підписка про нерозголошення не штука, санкції за порушення люті), повідомляли про знайдені баги. З кожною новою бета-версією механізм сипався все рідше, а в останній беті, по-моєму, він вже працював ідеально. До виходу iPhone з нетиповими типорозмірами все було готове.

Технічні подробиці про Adaptability я відклав на майбутнє. Коли-небудь, коли дійдуть руки, я про них напишу. Коли - не знаю.


Продовження слід

COM_SPPAGEBUILDER_NO_ITEMS_FOUND