Борец с системой
Архив26 февраля на многих Mac-ориентированных сайтах появились первые сообщения о смерти Джефа Раскина (Jef Raskin).
26 февраля на многих Mac-ориентированных сайтах появились первые сообщения о смерти Джефа Раскина (Jef Raskin). Авторы некрологов не скупились на эпитеты, называя Раскина и крупнейшим специалистом по пользовательским интерфейсам, и «отцом Макинтоша».
Не заметил смерти Джефа Раскина только главный «яблочный» сайт — Apple.com. На нем вообще ни разу прямо не упоминается человек, который стал в свое время тридцать первым сотрудником молодой компьютерной компании.
Кто изобрел Макинтош?
С пользовательской точки зрения Mac OS X
погрязла в трясине деталей.
Джеф Раскин
Равнодушие корпорации к Раскину объясняется сложными отношениями Джефа со Стивом Джобсом и тем очевидным фактом, что Раскин никогда Макинтош не изобретал, хотя и не отказывал себе в удовольствии вспомнить о том, как стоял у истоков главного компьютера Apple. У Макинтоша вообще нет конкретного автора, — если Apple I совершенно определенно является детищем Стива Возняка (Steve Wozniak), то Макинтош разрабатывался несколько лет и является плодом совместного творчества большого коллектива, из которого Раскин ушел за три года до выпуска первой модели Макинтошей.
Однако само название «Макинтош» придумал действительно Джеф Раскин. Вот только его Макинтош разительно отличался от компьютера, выпущенного в 1984 году компанией Apple. Дело в том, что уже в то время Джеф весьма критически относился к современным разработкам в области пользовательских интерфейсов и считал, что хороший компьютер должен быть максимально простым для освоения. Несмотря на то что именно с легкой руки Раскина Джобс ознакомился с технологиями, разработанными в исследовательском центре Xerox в Пало-Альто, сам Джеф относился к GUI скептически и, в частности, активно выступал против использования мыши. Макинтош в исполнении Apple казался Раскину дорогим и функционально перегруженным монстром, тогда как потребителям необходим простой, дешевый и интуитивно понятный компьютер. При этом Джеф, если верить байкам с folklore.org, к праву первенства относился крайне трепетно и при каждом удобном случае напоминал коллегам, что Макинтош изобрел именно он. Когда противоречия стали непреодолимыми, Раскин покинул коллектив разработчиков Мака, вынудив Джобса придумывать для проекта новое кодовое название.
Изобретая велосипед
В основу нового кодового имени была положена метафора, пришедшая Стиву Джобсу во время рекламного интервью для Scientific American. В журнале Джобс сравнивал обычных людей с пешеходами, тогда как пользователи компьютеров освоили по меньшей мере двухколесный транспорт. Таким образом, персональные компьютеры, по Джобсу, являлись «велосипедами для разума».
Недолго думая Род Холт (Rod Holt) и Стив Джобс переименовали проект «Макинтош» в проект «Велосипед» («Bicycle»). Когда разработчики намекнули начальству, что новое название у проекта получилось слегка глуповатым, им было сказано, что кодовое имя у проекта может быть любым, поскольку это всего лишь кодовое имя.
Но «Велосипед» не прижился. Между собой разработчики по-прежнему именовали новый компьютер Макинтошем, не обращая внимания на выговоры руководства. В конце концов, сдался даже Род Холт: называйте, мол, как хотите. Ведь это всего-навсего лишь кодовое имя.
Осенью 1982 года Apple обратилась за помощью к маркетологам, но толку от этого было чуть — вариантов названий новых продуктов маркетологи предложили много, однако ничего лучше Макинтоша придумать не смогли. Впрочем, Раскин в проигрыше не остался — путаница с названиями позволила ему впоследствии рассказывать о своей роли в создании Макинтоша, порой ее приукрашивая. Нет никаких сомнений, что Джеф собрал команду талантливых разработчиков и заразил их своим энтузиазмом, но конечный продукт, вышедший из недр корпорации Apple, имеет с компьютером, описанным в раскиновской «Книге Макинтоша» (На самом деле, так называется не книга, а сборник статей и дизайн-документов, посвященных раскиновскому Макинтошу), очень мало общего. И Раскин эппловскому Макинтошу — в лучшем случае дядя.
Вторая попытка
В Canon нашим проектом занималось умирающее подразделение электронных печатных машинок, не сумевшее вывести продукт на рынок, так что теперь эта кошка сдохла.
Джеф Раскин
В 1984 году Раскин решил попробовать реализовать свои идеи еще раз. В Apple его задумки были отвергнуты как бесперспективные с рыночной точки зрения. Теперь же он мог доказать бывшим коллегам, как они ошибались. В основу компьютерной приставки Cat были положены принципы, описанные им еще в «Книге Макинтоша», а именно:
Пользователь должен работать в едином интерфейсе. Это дело системы — решать, какой модуль подключать в тот или иной момент. Так, например, если пользователь печатает на компьютере текст, значит, необходимо подключать модуль со словарем и функции текстового процессора, а если чуть дальше пользователь пишет формулу — уже нужен вычислительный модуль.
Мышь, по мнению Раскина, — крайне неудобный и неэффективный элемент компьютерного интерфейса. Вместо мыши Раскин предложил использовать инновационные на тот момент методы работы с клавиатурой, — так, для перехода к нужному фрагменту текста требовалось нажать LEAP-клавишу и набрать необходимое сочетание букв (сходную функциональность обеспечивает поиск в Firefox или поиск по заголовкам в TheBat!).
Изначально Cat была реализована в виде дополнительной платы к Apple II — SwyftCard. Инвесторы Раскина не могли профинансировать производство полноценного компьютера, и со своим бизнес-планом Джеф обратился в компанию Canon. Через некоторое время на рынке появился новый продукт — Canon Cat, но к большому разочарованию Раскина выпуск новинки продолжался всего полгода и, продав 20 тысяч экземпляров нового устройства, японская компания решила, что возиться с такой мелочевкой не имеет смысла. Потребители не оценили ни простоту интерфейса, ни элегантность решений, предпочтя «кэноновской кошке» более дорогие и сложные в освоении персональные компьютеры.
До сих пор циркулирует несколько теорий, объясняющих тогдашнее фиаско Раскина (интересно, что ни одна теория не ставит под сомнение ценность его идей). По одной из них Раскин стал жертвой корпоративной грызни — его проект был так привлекателен, что за него внутри корпорации Canon развернулась самая настоящая борьба, и один из руководителей компании просто приказал свернуть перспективное направление, решив, что мир в корпорации важнее возможных прибылей. Есть и другое толкование событий: известно, что в 1987 году корпорация Canon вела переговоры со Стивом Джобсом относительно возможных инвестиций в его новую компанию, NeXT Computers, и якобы одним из условий сотрудничества со стороны Джобса было прекращение выпуска устройств Canon Cat (Версия определенно параноидальная, но Canon действительно купила в 1989 году 16 процентов акций NeXT Computers). Согласно третьей теории ни тайных, ни явных недоброжелателей у Раскина не было — просто Canon неправильно позиционировала Canon Cat, и свернула проект, когда стало ясно, что особых денег он не принесет (Будучи многофункциональным устройством, Canon Cat воспринимался потребителем скорее как продвинутый текстовый процессор, чем как простой для освоения персональный компьютер).
Нечеловеческое окружение
Не существует абсолютно никаких технических причин для того, чтобы на загрузку компьютера уходило больше нескольких секунд.
Джеф Раскин
Следующим крупным проектом Джефа Раскина стала разработка The Humane Environment (THE). Впервые более-менее полно концепция THE была представлена в книге The Human Interface (в русском переводе «Интерфейс: новые направления в проектировании компьютерных систем», издательство «Символ-пресс», 2003), изданной в 2000 году. Однако несмотря на «инновационность» ничего действительно нового в ней не оказалось. За двадцать лет с момента проектирования первого Макинтоша взгляды Джефа не претерпели значительных изменений. Концепцию, положенную в основу Canon Cat, он по-прежнему считал удачной, а графические интерфейс а-ля Windows — недостаточно интуитивными. И дело, по мнению Раскина, зашло так далеко, что незначительными переделками GUI отделаться уже не получится. Если мы хотим сделать компьютер действительно дружелюбным, нам необходимо отказаться от набивших оскомину рабочих столов, модальных окон, меню, системы сохранения информации в отдельных файлах (кто, в конце концов, способен запомнить, как он назвал нужный файл два или три года назад?). По большому счету, мы должны отказаться от современных интерфейсов вообще. Есть пользователь, есть данные. А все остальное должно быть незаметным. Чем меньше пользователь сталкивается со средствами системы, позволяющими ему манипулировать данными, тем лучше.
Любое изменение данных немедленно записывается. Это, правда, порождает проблему конфликта версий (в обычной системе вы вполне можете сохранить файл, а потом внести в него изменения и сохранить новую версию под новым именем; в THE такой возможности нет в принципе), но с этим, как считал Раскин, можно справиться, реализовав возможность практически бесконечной отмены операций.
Не забылись и LEAP-клавиши, с помощью которых осуществляется поисковая навигация по тексту. Нажав такую LEAP-клавишу, пользователь может ввести последовательность символов и автоматически переместить курсор к тому месту, где она встречается в первый раз.
Ввод команд (SAVE, DELETE и т. д.) осуществляется в любом месте документа. Для того чтобы система поняла, что это команда, а не часть текста, придуманы так называемые командные клавиши. На старых клавиатурах в качестве командной клавиши можно использовать Caps Lock.
Система подстраивается под данные, а не данные — под систему. Пользователь может помещать любую информацию в любую часть документа — система сама подберет нужный модуль (функции текстового процессора включатся для работы с текстом, функции электронных таблиц для работы с числовыми данными, функции графического редактора — для работы с изображениями). Если же она этого не сделает, то всегда можно воспользоваться командными клавишами.
Впрочем, вполне можно дать слово самому Джефу Раскину:
«В современных системах вся работа производится в так называемых приложениях, которые являются наборами команд, подходящих для объектов определенного рода… Сама идея приложения — искусственная, и удобна для программиста, а не для конечного пользователя. С пользовательской колокольни есть лишь контент (набор объектов, созданных пользователем или доступных ему) и команды для операций с контентом. Эти команды обязаны быть независимы от приложений и универсальны для любого объекта в любое время. В формальных системах одно и то же действие пользователя в разных условиях может вызвать разные команды, или вообще не вызвать ни одной (В общем, очевидно, что в разных приложениях (контекстах) клавиатурные сокращения, например, могут означать совершенно разные вещи). Если команда, примененная к объекту, не имеет смысла, следовательно объект должен быть автоматически переведен в форму, когда команда обретает смысл. К примеру, проверка правописания во входящем факсе (При всем уважении к Раскину пример явно так себе — зачем, простите, проверять правописание во входящем факсе?) сначала запускает программу распознавания текста для перевода оригинального битмапа в текст. Если же ничего сделать нельзя, система ничего и не делает».
И, наконец, Zooming User Interface. Понимая, что пользователь работает с массой самых разнородных данных, Раскин все же не смог полностью отказаться от концепции рабочего стола, но существенно ее переработал. В основе ZUI лежит понятие бесконечной виртуальной плоскости, на которой тут и там разбросаны различные объекты. В поисках необходимого контента пользователь может увеличивать любой из этих объектов для просмотра его содержимого.
«Проблемы компьютерной навигации и ограниченного размера дисплея могут быть одновременно решены с помощью парадигмы видеокамеры, когда пользователь может увеличивать и уменьшать масштаб, «летая» над вселенной объектов. Объекты (документы, изображения, игры — в общем, все, что может иметь визуальную репрезентацию) сгруппированы в наглядные группы и кластеры, отличающиеся друг от друга формой, цветом или местоположением (к примеру, адресную книгу мы можем поместить в верхнем левом углу нашего мира). Уменьшение масштаба приведет к тому, что мы выйдем за пределы нашего компьютера и увидим локальную сеть, а если взлететь еще выше, то нашему взору предстанет веб».
Все это вместе — и есть концепция The Humane Environment, придуманная Джефом Раскиным для того, чтобы облегчить жизнь простого юзера. Наглядный, простой и более эффективный по сравнению с нынешними GUI интерфейс для работы с компьютером.
Арчи
Приложения как таковые нужны компаниям типа Adobe. Им по душе торговать все более и более специализированными программами.
Джеф Раскин
Джеф организовал Центр Раскина по созданию Humane Interface (Raskin Center for Humane Interface, RCHI), в котором и началось создание THE. Поскольку и денег, и людей у Раскина было очень немного, а сам проект, обжегшись на молоке, он рассматривал как некоммерческий, то разработку решили вести поэтапно, а звезды с неба хватать по мере продвижения. Так, THE превратился в open-source-проект, разработку которого возглавил подросший сын Джефа — Аза (Aza Raskin).
THE, по задумке Раскина, должен был стать не новым компьютером, а надстройкой над современными операционными системами, которая приведет их в надлежащий вид. Отсюда — требование к мультиплатформности и, как следствие, выбор средства разработки: прототип THE написан на Python.
К сожалению, этот выбор — при всей любви Раскина к простоте — привел к тому, что жаждущие простоты пользователи посмотреть на THE просто не смогут. Для запуска THE требуется скачать и установить четыре программных пакета (в их числе сам Python и CVS-менеджер для загрузки собственно THE) плюс вручную заменить одну dll на другую. Поэтому о простоте разработчики говорят все меньше и меньше, а все больше об эффективности — отдуваться за стандартные GUI опять пришлось манипулятору типа «мышь» (по утверждениям разработчиков «клавиатурный подход» на 40 процентов эффективнее мышиного).
Сам THE (переименованный в начале января 2005 года в Archie — от RCHI) при ближайшем знакомстве разочаровывает. В настоящее время концепции Раскина реализованы в рамках текстового редактора, причем реализованы далеко не полностью: собственно, сегодня Archie может похвастаться только поддержкой LEAP-клавиш, расширенной функциональностью (встроенные команды для написания e-mail или перехода в веб) и командной клавишей на базе Caps Lock. Любая ошибка прерывает исполнение программы. ZUI нет вообще (впрочем, какая-то реализация его уже существует, но в свободном доступе ее нет [С сайта центра Раскина можно загрузить флэш-демонстрацию возможностей зум-интерфейса]). И поверьте, что юзабилити у любого современного редактора (О GUI и разговора нет — Archie просто пока слишком слаб, чтобы тягаться с интерфейсами операционных систем) выше на порядки. Впрочем, каждый, кому не жалко системный реестр, может попробовать поработать с новой парадигмой самостоятельно, запустив Archie на своей машине.
Скорее теоретические изыскания Раскина, нежели его практические опыты, позволили в 2005 году Центру Раскина получить 2 млн. долларов от венчурных инвесторов на дальнейшее развитие проекта. Пока Джеф был жив, планировалось полностью завершить проект за пять лет. Сколько времени это займет сейчас — неизвестно, хотя Аза Раскин явно увлечен идеями отца и Archie остался в хороших руках.
Самое забавное в этом то, что многие идеи Джефа Раскина в урезанном виде оказались все же восприняты индустрией. Явно в направлении THE движутся пакеты Microsoft Office (собственно, любая интеграция разных пакетов созвучна идеям Раскина). Джефа бы это сравнение наверняка возмутило, но мы действительно не думаем о том, какое приложение запускаем, открывая файл в формате .doc — редактор запускается автоматически (Еще более сильным примером является, наверное, панель Microsoft Office. Впрочем, это уже очень на любителя). Явно читали Раскина создатели Gmail, экспериментирует с GUI Sun… Список компаний, которые учли критику Раскина и попытались решить проблемы эволюционными методами, можно продолжать и продолжать.
Означает ли это, что предложения Раскина по переработке существующих интерфейсов действительно будут востребованы в полном объеме? Очень вряд ли. Идеи Раскина для этого слишком радикальны. Он не столько конструктор, сколько деконструктор пользовательских интерфейсов. Что не помешало ему, оставаясь, по большому счету, на обочине компьютерной индустрии, повлиять на нее сильнее, чем повлияли многие из тех, кто находился в самой гуще событий и обладал всеми необходимыми ресурсами.