Особенно важно было правильно сделать это в SpringBoard — программе, которая отображала ярлыки домашнего экрана. Квадраты с закругленными углами представляли собой все приложения, имеющиеся на устройстве. Нажатие ярлыка SpringBoard запускало приложение, которое занимало весь экран. Попадание по правильной иконке, к удовлетворению потребителей, превращало весь интерфейс iPhone в блокнот, браузер или календарь. Переход от задачи к задаче осуществлялся со скоростью мысли. Но нажатие неправильной иконки могло раздражать, как будто вы обнаружили, что взяли вилку вместо ложки, только окунув ее в миску с супом.
Для SpringBoard эта проблема эргономики сводилась к поиску оптимального — такого, чтобы легко было попасть — размера ярлыка на домашнем экране. Мы не знали, каким он должен быть, и несколько первых показов демоверсий проекта Purple на прототипах Wallaby дали нам некоторое представление о разнице в анатомическом строении и ловкости, которой обладают люди в целом.
У Скотта Форсталла были длинные, гибкие пальцы с маленькими подушечками. Он мог выгнуть большие пальцы над экраном Wallaby, а затем двигать ими вверх и вниз с почти механической точностью, и они ходили, как рычаги клапана в газораспределительном механизме двигателя. Казалось, Скотт был генетически предрасположен к поразительно аккуратным нажатиям на сенсорный экран, и он мог точно прицелиться и попасть по самым мелким экранным элементам пользовательского интерфейса, даже не задумываясь о том, что делает.
А вот у Грега Кристи дрожали руки. Эта дрожь была особенно заметна, когда он выходил на улицу покурить. Если кто-то из нас, программистов, давал Грегу слишком маленький ярлык, по которому ему трудно было попасть, он все равно пытался, и когда попытка проваливалась, издавал свой характерный вздох — громкий, долгий, недовольный вздох истинного ньюйоркца, — чтобы выразить свое $#!&% раздражение от того, что не может использовать ту штуку, которую вы ему дали. Грег был в своем праве. Вспомните, Стив Джобс не говорил, что продукты должны расстраивать пользователя, он говорил, что они должны «приспосабливаться к пользователям».
Мы ожидали, что вариативность будет гораздо выше, чем то, что мы видели на примере Скотта и Грега. Их опыт пользования сенсорным экраном на раннем этапе разработки отличался, и это доказало, что одно из самых важных пользовательских взаимодействий с iPhone остается под вопросом: какого размера должен быть ярлык на домашнем экране?
Скотт Херц, один из моих коллег по проекту Purple, вскоре нашел ответ. Он написал приложение и дал попробовать команде. Приложение было небольшим. Оно запускалось, показывая очень крупную кнопку Start. После нажатия на нее экран на мгновение становился пустым, а потом в каком-то его месте появлялся прямоугольник. Нужно было попасть по нему пальцем. Когда вы нажали, независимо от того, попали вы или нет, после еще одной секунды пустоты где-то на экране появлялся еще один прямоугольник. Только он был другого размера: больше или меньше. Попади в коробочку. Попади в коробочку. Попади в коробочку.
Честно говоря, это было весело. Как игра. После двадцати или около того прямоугольников она заканчивалась, и приложение показывало вам ваши очки: как много было попаданий и сколько раз вы промахнулись. За кадром ПО отслеживало размер прямоугольников и их положение. Поскольку было весело играть… ммммм… в серьезную тестовую программу, чтобы собрать чрезвычайно важную информацию о возможности пользоваться сенсорным экраном, приложение Херца быстро разошлось по коридору Purple. В течение нескольких дней мы набрали информацию о размере целей и точности попадания.
Результаты игры Скотта показали, что если мы разместим цель в квадрате со стороной пятьдесят семь пикселей, то она может быть где угодно — вверху, внизу, слева, справа. И каждый сможет легко попасть по этому квадрату с почти стопроцентной точностью.
Игра Скотта дала нам ответ, который мы искали. Ярлыки на домашнем экране первого iPhone являются квадратами со стороной в пятьдесят семь пикселей.
Один из главных принципов пользовательского интерфейса iPhone — это непосредственное управление. Идея его состоит в том, что программным объектам придаются некоторые атрибуты и характеристики, имеющиеся у физических объектов, и это позволяет людям взаимодействовать с цифровыми битами так, как будто они являются предметами в реальном мире.