Считается, что дальнейшая судьба Энгельбарта (лаборатория была закрыта, все молодые сотрудники ушли в Xerox PARC; Энгельбарт пережил пожар собственного дома; рак, от которого успешно излечился; был абсолютно забыт компьютерной общественностью вплоть до конца 1980-х, когда о нем вспомнили с подачи любопытного журналиста; в 1997 получил премию Тьюринга) стала результатом ошибочной ориентации доктора на системы разделенного времени - в те годы, когда персональные компьютеры стали набирать популярность. Впрочем, у автора статьи есть основания полагать, что большей ошибкой Энгельбарта (если считать это ошибкой) была убежденность, что компьютер должен стать сложным инструментом ученого, требующим определенных знаний и умений - но и дающим определенные возможности. Взгляды эти достойны уважения - но рынок, рынок! - рынок уже требовал тысяч компьютеров для секретарш, бухгалтеров, юристов… Да и в рынке ли дело? Всякий ли согласится разрабатывать инструмент для сотни посвященных, когда можно - для сотен тысяч «нормальных людей»? Да и всякий ли из тех ученых, о ком радел Энгельбарт, готов месяцами учиться ради мифического «augmenting», когда можно на «компьютере для всех» набирать-распечатывать научные статьи, делать простые расчеты безо всякого обучения?
- Пожалуйста, Джордж, не отбирай.
- Дай сюда!
Ленни неохотно разжал кулак. Джордж взял мышь и швырнул ее далеко через заводь, на другой берег, в кусты.
Возможно, из предыдущего текста это не вполне очевидно - но я отнюдь не агитирую за немедленное и повсеместное введение аккордной клавиатуры. Я вполне отдаю себе отчет в том, что она - таки да - не самый легкий в использовании гаджет. Но вот на что я пытаюсь указать: лаборатория, в которой некогда родилась мышь, в процессе «родов» провела массу исследований и строжайшее тестирование возможных решений; мышь была лучшим и эффективнейшим из них при условии использования в паре с аккордной клавиатурой. Но условие это было забыто[К слову, схожей вивисекции в свое время подверглось высказывание В. И. Ленина «В условиях поголовной безграмотности населения важнейшим из искусств для нас является кино и цирк"] - первейшее достоинство мыши, даже-и-ребенку-понятность, затмило все остальное. Вот и расхлебываем теперь.
Без сомнения, именно использование мыши было одним из главных факторов развития графических, двухмерных интерфейсов. Наличие мыши и - пресловутая «интуитивная понятность». Именно здесь произошло «отбрасывание старого» - как часто бывает, новый способ построения интерфейса, он же GUI[Graphical User Interface - графический интерфейс пользователя], он же WIMP[Windows, Icons, Menus, Pointers - окна, иконки, меню, курсоры], не продолжал, а отбрасывал старые традиции.
Одномерный интерфейс - программа получает «вход», выдает «выход» - предполагал легкость создания «цепочек программ» (выход одной является входом другой). Двухмерный - пользователь тыкает мышью в кнопки и менюшки, изображение на экране меняется - не предполагает возможности взаимодействия между разными программами (кроме той, что заранее задана автором программы). То есть, говоря по-умному, был «широкий командный язык при бедности средств выражения», а стал «узкий командный язык при богатом интерфейсе». Раньше одна программа могла послать другой строчку символов - и вторая практически гарантированно их поняла бы и как-то обработала. Сегодня одна программа может послать другой только[Это, конечно, упрощение - но допустимое и на понимание ситуации не влияющее] сообщение «тыкнули мышью в точку [x, y]» - но, чтобы это сообщение было осмысленным, посылатель сообщения должен понимать, где (по каким координатам) у получателя находятся «органы управления» (кнопки, менюшки, поля ввода) - а вопрос это нетривиальный и в общем случае неразрешимый.
«Великий храм рухнул, остались лишь камни» (гр. «Крематорий») - была разрушена инфраструктура, которую позже начали называть Unix-way: куча маленьких программ-утилит, каждая решает ровно одну задачу, сложные задачи решаются цепочками программ. Нет больше цепочек, есть монолитные монстры. Pardon moi, но и здесь главный обвиняемый имеет две кнопки, одно колесико и один хвост (шарик в пузе - уже архаизм).
Unix-way, «путем Unix», принято называть принцип работы системы, в которой каждая программа выполняет ровно одну задачу. В их основе лежит алгоритм «принять текст на вход, отработать, выдать текст на выход». Однородность входных и выходных данных позволяет строить мощнейшие «цепочки» программ. К примеру, в идеологии Unix-way почта должна работать следующим образом: одна программа обеспечивает подключение к POP-серверу; другая скачивает письма; третья распределяет их по папкам; четвертая проверяет на спам; написанием новых писем ведает пятая, отправкой - шестая. Такой способ работы для «нормального виндузятника» может показаться извращением, но он имеет свои преимущества. Во-первых, любая часть «мультипрограммной» среды может быть легко «подстроена под себя» или вовсе заменена другой; во-вторых, в эту цепочку можно включить что угодно (не только очевидную проверку орфографии, а, скажем, автоматическое составление графика встреч по некоторым письмам или еще какую экзотику вроде запуска компилятора).
Вообще говоря, название «Unix-way» является «отрицающим», «Unix» здесь означает «не Windows и не Mac OS», перешедшие на «модный GUI». Когда появились графические оболочки для Unix/Linux, сравнимые по понятности для юзера с ненавистной виндой (Gnome/KDE), они, по сути, копировали не только понятность Windows, но и «чайнико-центричную», «закрытую» идеологию программ «я сама по себе, меня не тронь». Отсюда и миф, что «по-другому, мол, нельзя», и даже сверх того: «Рюши (GUI) - для чайников, командная строка - для профессионалов».
Впрочем, есть мнение, что дело не в GUI, а в прискорбном сворачивании пути Unix на «догнать и перегнать M$ на персональных компьютерах», «сделать такое же, только свое», - то есть никто изначально и не пытался сделать «двухмерный» пользовательский интерфейс, не отходя от идеалов «маленьких взаимодействующих программ». «Прискорбным» сей факт я считаю оттого, что Unix-way как отдельное и самобытное явление практически забывается. А жаль. Ведь в мире, где все делают одно и то же, жить скучновато.
- Я отобрал ее у тебя не по злобе. Ведь эта мышь давным-давно уже издохла, и потом, ты ее совсем раздавил, когда гладил. Ну ничего, найдешь другую, живехонькую, так уж и быть, оставишь ее ненадолго.
Извечный принцип «критикуя - предлагай» я нарушу, всенепременно нарушу. Я не знаю, как надо. Пока что я знаю, как не надо. Не надо - пытаться делать сложную работу одной рукой в варежке (а как еще назвать руку с одним-двумя действующими пальцами?). Не надо - упражнений на растяжение пальцевых суставов (Ctrl+Alt+…, нажать четыре раза, если не открывают).
В конце концов, лично я люблю свои руки. У меня в них до фигища разных костей, мышц, сухожилий и какое-то неимоверное количество степеней свободы - зря, что ли? Если бы природа считала, что вершина эволюции - человек с мышкой, у нас было бы два пальца на правой руке, двигались бы они только вверх-вниз, да и то на треть сантиметра. Может быть, будущее за здоровенным тачпадом, по которому водят двумя руками и действуют всеми пальцами (его прототип можно посмотреть на сайте tactiva.com). Может быть - за пятикнопочной мышью (или - чем черт не шутит - за двумя пятикнопочными?). В одно я верю твердо - время, которого ждал Энгельбарт, время, в которое не хотят верить производители «компьютеров-для-Вашей-секретарши-!», время, когда компьютер станет не помощником в рутинных действиях, а продолжением «ментального тела», - время это наступает. И мышам в нем не место.