Будущее дизайна веб-систем, попытка прогноза

    Преамбула


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

    Текст предлагает несколько парадигм, которые должны радикально улучшить восприятие и работу с веб-сайтами, а также повысить качество информации в сети.

    Ну и да, на данный момент — образцовый дизайн: Дзенский поиск Яндекса. Шутка.

    Вводная часть


    В настоящее время идет бурное развитие интернета, который уже можно писать с маленькой буквы, потому что это не сеть сетей, а вполне себе объект цивилизации.

    Одним из элементов этой системы являются технологии WWW — World Wide Web — всемирной паутины.

    У многих уже дело дошло до того, что интернет в голове равен WWW, что на самом деле есть неправда, потому как интернет — это транспорт, а WWW — один из видов трафика.

    Постулат первый: все есть ОБЪЕКТ


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

    Что же такое WWW? WWW — это система, построенная по клиент-серверной архитектуре. Сервер — это программа, которая отдает данные, а клиент — это программа, которая эти данные показывает пользователю. Базируется данная система на двух базовых протоколах HTTP — для передачи данных между сервером клиентом и HTML для указания программе-клиенту что и как показывать пользователю. Это если вкратце, для понимания нижесказанного значения не имеет.

    Что же такое HTML? HTML — это не что иное, как язык, предназначенный для представления так называемого «гипертекста», то есть обогащенного текста. Чем же он обогащен? А обогащен он всего навсего ссылками. То есть отличие гипертекста от текста в том, что в нем есть «живые» ссылки, активировав, которые, вы можете перейти к связанному с этой ссылкой другому документу.

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

    В качестве примера лаконичной верстки, то есть того, что именно понималось создателями под WWW можно привести странички самого WWW Consorcium, то есть организации, которая стандартизирует Веб: вот типичный пример.

    Итак, продолжим. Буквально через несколько лет, после того, как Веб подрос и набрал силу, его создатели начали продвигать идею так называемого Семантического Веба.

    О чем идет речь? Для начала задайте себе вопрос: вам легко найти информацию в интернете? А можете ли вы найти ссылку, которую не сохранили ранее? А как насчет поиска по сайту? Весьма нетривиальные задачи. А все потому, что HTML — это язык гипертекста, а никак не язык баз данных или структурированных идей.

    Как только Веб технологии стали получать широкое распространение сразу стало ясно, что ситуация выходит из под контроля. В сети невозможно ничего найти. Да, конечно есть поисковики. Но это не что иное, как КОСТЫЛИ. По сути поисковики выполняют работу негров, которые перелопачивают все те миллиарды накопленных тонн навоза в поисках редких жемчужин мысли и релевантной информации. Самое смешное, что кому как не создателю сайта знать, а что же он хочет донести до внимания мира! Но у него НЕТ специальных стандартных технических средств, чтобы это сделать. Более того, по сути этого никто и не требует. Вот все и валят все в кучу. Валят в надежде, что поисковики сумеют разобраться и как-то эту кучу привести в хоть какой-то порядок, чтобы можно было в ней ориентироваться.

    Дак вот, осознав эту печальную проблему, отцы интернета (то есть Веба) и затеяли проект Семантического Веба. То есть не гипертекста, а сети ОБЪЕКТОВ, которые имеют ТИП и определенные АТРИБУТЫ, и таким образом могут себе о сами рассказать. Но так как это было сложновато для понимания обычных веб-мастеров, а так же корпоративного стада, то идею просто проигнорировали. А зря. Конечно отцы Веба копнули слишком глубоко: они сразу же схватились за необъятное — попытались описать ОНТОЛОГИЮ, то есть построить типовую сеть объектов и связей между ними. Это, конечно не под силу даже большим коллективам, да еще за короткое время.

    Но сама идея ОБЪЕКТОВ хороша и должна быть применена.

    Таким образом, первый постулат: на любом сайте все есть ОБЪЕКТ. Объект обладает ТИПОМ и АТРИБУТАМИ.

    Ну, тип, собственно говоря, один из атрибутов.

    Итак, любой сайт — это по сути набор объектов разного типа. Новостной сайт — это набор объектов типа статья, интернет-магазин — это набор объектов типа товар, объекта типа корзина и объектов типа клиент, а социальная сеть — это набор объектов типа пользователь, статус, комментарий и так далее.

    Вставая на платформу этой парадигмы мы сразу получаем возможность структурированного проектирования сайтов в виде объектов и их свойств и методов. То есть кто кому что пересылает, на что отвечает и каким образом должен отображаться. Все это сразу идеально кладется на множество методов структурного объектно ориентированного программирования, вплоть до полуавтоматической генерации прототипа/каркаса сайта из объектной модели, которая, собственно, сразу же будет являться и самодокументируемщимся ТЗ на проект.

    Так как сам процесс проектирования сайтов выходит за рамки данного документа, то он будет описан в отдельном тексте.

    Да, конечно, все скажут, что есть MVC. Я знаю что такое MVC — эта идея имела место быть, но она умерла толком не родившись.

    Постулат второй: ничего лишнего


    Одним из раздражающих факторов современного дизайна сайтов является сложность их восприятия. Чем она вызвана? А вызвана она одним простым соображением, которое с упорством достойным лучшего применения, раз за разом повторяют дизайнеры сайтов. Дизайнеры сайтов, возможно с подачи заказчика, руководствуются желанием впихнуть невпихуемое, а именно постараться воткнуть на страницу максимум контента. Тут и основной блок, и навигация, и реклама, и анонсы, и данные о сайте, и различные «партнерки».

    То есть страница превращается в адское лоскутное одеяло, которое невозможно воспринимать адекватно, да, которое, к тому же еще и отвлекает от основного действия, которым ты пытаешься на этом сайте заниматься.

    Я уже не говорю про ужасные порождения дизайнерского гения в виде выезжающих менюшечек и кнопочек с разных сторон.

    Итак, что предлагается. Предлагается убить все напрочь. ВООБЩЕ ВСЕ. На странице должно быть ТОЛЬКО ОСНОВНОЕ СОДЕРЖАНИЕ.

    Про что я говорю? Пример первый: режим Reader в Safari. Что делает этот режим? Он убирает мусор. Браузер пытается вычленить самый большой структурный блок на странице и показывает ТОЛЬКО ЕГО.

    На самом деле, этот режим — тоже не новость, потому что задолго до этого в экосистеме Apple придумали дзенские редакторы. Что это такое? Это редакторы текста, которые позволяют СКОНЦЕНТРИРОВАТЬСЯ на работе. Окно редактора занимает весь экран, у него нет никаких менюшечек и кнопочек, которые постоянно торчат перед глазами. Только ты и текст. Текст и ты. И ничто тебя не отвлекает. Как пример, можно привести культовый редактор WriteRoom.

    Таким образом, постулат второй: ничего лишнего, только то, что нужно здесь и сейчас.

    Это включает в себя и навигацию и прочие атрибуты. Чем ее заменить — в следующем разделе.

    Постулат третий: командная строка — универсальный способ управления


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

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

    Только подумайте, данный интерфейс был предложен в начале 80х годов! То есть уже более 30 лет НИЧЕГО НЕ МЕНЯЕТСЯ. С тех пор компьютеры из экзотических слабосильных изделий превратились в адских монстров, оснащенных многоядерными процессорами с дикими тактовыми частотами и огромной памятью. И все это великолепие уходит в гудок.

    Итак, что предлагается. Предлагается вернуться к старой доброй командной строке. Попытки это сделать предпринимаются регулярно. В частности, одним из адептов такого подхода являлся ныне покойный Джеф Раскин, стоявший у истоков Apple. Его дело продолжает сын Эйза Раскин, который продвигает свой проект подобного интерфейса под названием Ubiquity.

    Но за основу идей для интерфейса командной строки имеет смысл взять более зрелую систему Unity HUD (Head-Up Display). Unity — это графическая оболочка последнего поколения Ubuntu. Так как Убунту работает на множестве различных устройств, начиная с компьютеров, продолжая телевизорами со встроенным Линюксом и заканчивая грядущим мобильником с этой ОС, то желание вернуть обновленный текстовый интерфейс по крайней мере можно считать трендом.

    Что же такое Unity HUD? Это не что иное, как интеллектуальная командная строка. Она может отдавать команды как текущему приложению, так и другим приложениям, находящемся в фоновом режиме. Также она может управлять самой операционной системой.

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

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

    Но это еще не все. Сам по себе текстовый ввод неплох на обычном компьютере. Но на планшете, а тем более на каких-нибудь очках Гугл, он уже достаточно неудобен, если не сказать больше — неприемлем. И решением тут является голосовой ввод. То есть такая интеллектуальная командная строка — это прямой путь к голосовому вводу.

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

    Таким образом, постулат третий: командная строка — это замена всей системы управления и отчасти форм ввода

    Каким образом должна вызываться эта самая командная строка? Да нажатием на какую-нибудь специальную кнопку. К примеру, бОльшая часть людей не умеет пользоваться кнопкой Windows, которая находится на всех клавиатурах «обычных» компьютеров. Можно задействовать кнопку Tab или Caps Lock, которые тоже простаивают.

    Дополнение: Реклама


    В связи с такими радикальными расчистками интерфейса есть одна проблемка. А куда девать рекламу? Надо же как-то зарабатывать бедным владельцам.

    Вообще-то я против рекламы. Поэтому лучше, если сайт будет зарабатывать на чем-то другом, подписке или рекламными статьями или еще как-то. Но если уж без рекламы никак, то остается встраивать небольшой блок ТЕКСТОВОЙ рекламы, к примеру вниз страницы, таким образом, чтобы не раздражать пользователей. Разумеется, реклама должна быть контекстной, то есть соответствовать содержимому страницы.
    • +3
    • 10,2k
    • 7
    Поделиться публикацией

    Комментарии 7

      0
      Главная проблема командной строки заключается в необходимости заучивания команд.

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

      Во-вторых, людям с плохой памятью это будет кошмаром. Например, крайне редко использую в кнопке «Пуск» поиск программ: ну не помню я названия программ. А вот посмотреть визуально глазами и выбрать нужную — это пожалуйста.
        0
        Не такая уж это и проблема — пользователю не нужны все команды, которые есть в интерфейсе. В отличии от GUI в данный момент неиспользуемые команды не загромождают интерфейс, а тихо спят в манах или в памяти пользователя до тех пор пока в них не появится нужда.

        Даже если не помнить названия команд — есть же автодополнение по [TAB] — легко посмотреть визуально и выбрать нужную.

        И наконец, все что есть в командной строке можно заскриптовать. А попробуй-ка заскриптовать GUI ?!
          0
          тихо спят в манах или в памяти пользователя


          В этом то и дело. Я как пользователь новой системы, которую мне надо использовать только сейчас, не хочу разбираться в манах, понимать логику составления этих инструкций.

          автодополнение по [TAB] — легко посмотреть визуально и выбрать нужную.


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

          И смотрите, что у вас получается. Ситуация с GUI — есть система, в которой через графический интерфейс иерархически разделены различные операции. Если что-то непонятно, то надо лезть в инструкции. В системе с командной строкой у вас процесс более линейный, и хотя внешне только командная строка, но надо постоянно обращаться к длинным инструкциям. Так что в общем интерфейс командной строки куда более загроможден именно этими инструкциями.

          Еще яркий пример. Уже сколько лет работаю в Photoshop. B я до сих пор не могу запомнить горячие клавиши даже основных команд (ну может пять помню и всё). Всё делаю через панели, меню и др. А если все будет через командную строку? Это же кошмар будет. По аналогичной причине я не смог перейти с Notepad++ на Sublime Text.

          Я не говорю, что командная строка это плохо. Это замечательнейший инструмент. И среди программистов он незаменим, во многих сложных системах тоже нужен. Но это не панацея и для обычных пользователей это гораздо сложнее.

          И наконец, все что есть в командной строке можно заскриптовать. А попробуй-ка заскриптовать GUI ?!

          Можно теми же макросами, если это нужно. Но опять таки скрипты нужны в ограниченном спектре программных продуктов. А у вас статья о будущем всего интерфейса.
            0
            Ваши доводы субьективны:
            Почему упор делается не на простую командую строку, а на множество иконок тех же приложений? Именно по причине того, что основной массе людей так удобнее.
            Так что в общем интерфейс командной строки куда более загроможден именно этими инструкциями.
            Уже сколько лет работаю в Photoshop. B я до сих пор не могу запомнить горячие клавиши даже основных команд


            Строчки текста что внутри выпадающего меню, что внутри выскакивающего автодополнения — идентичны. Иконки если надо — можно вставить и в командную строку. В фотошопе я не работаю уже несколько лет, однако отлично помню все клавиатурные комбинации. А вот заскриптовать сложную обработку в нем не могу — средства фотошопа для этого слишком ограничены и это разочаровывает.

            Рекомендую изучить выразительные средства командной строки — зная их получше вы увидите в них значительные преимущества перед GUI. А то получается рассуждения о вкусе устриц
              +1
              Строчки текста что внутри выпадающего меню, что внутри выскакивающего автодополнения — идентичны.

              Сам текст может быть одинаковым, но вот роль он играет разную. В интерфейсе командной строки текст команды тождественен ей самой — чтобы обратиться к команде нужно как минимум помнить/знать, как она начинается (дальше помогут средства автодополнения, без которых интерфейс командной строки превращается в рутину). В графическом интерфейсе текст команды является только одним из вспомогательных атрибутов, который помогает убедится, что команда та, которую пользователь ищет. Но сам путь к команде пользователь находит с помощью визуальной, пространственной и моторной памяти:
              — Так, мне нужен поиск по файлам. Помню, для этого есть команда, которая во втором слева меню, где-то посередине списка, на выпадающем вправо меню.
              Рука рефлекторное дёргает курсор в верхне-левый угол экрана, глаза находят знакомый чёрно-оранжевый значок.
              — Ага, «Найти в файлах» — ну значит точно то, что мне было нужно.
              В глаза бросается подсказка с шорткатом.
              — Хм, «Ctrl+Shift+H»? Ну, если в ближайшие 20 минут снова понадобится искать в файлах, то воспользуюсь шорткатом — если позже, то забуду и придётся снова искать через меню.

              Графический интерфейс эксплуатирует те навыки человека, которые у него хорошо развиты в ходе эволюции начиная с ранних приматов. Интерфейс командной строки эксплуатирует абстрактное мышление — навык, приобретённый гораздо позже, да и до сих пор не всем людям легко дающийся.
        0
        Не надо забывать, что мир не сводится к тексту. Кроме текста существует как минимум ещё и графика.
        Во всех популярных поисковиках есть поиск по картинкам. Как вы его запихнёте в текстовый интерфейс, без плиток и картинок?
        Как вы спроектируете графический редактор без «отвлекающих элементов»? Как создать командно-строчный интернет-магазин, который не обанкротился бы? Ни один современный сервис невозможно представить в команднострочном варианте. Более того, количество текста на страницах имеет тенденцию к уменьшению. Смотрите: сейчас вместо статей всё чаще публикуют подкасты, а вместо туториалов — видео. Даже уже туториалы по программированию найти становится сложновато, все так и норовят видео подсунуть.
        Чтобы в полной мере оценить зло командной строки, попробуйте поиграть в любой рогалик на парсерной платформе. Вряд ли вас хватит надолго, ибо это просто кошмар — угадывать, как именно составить запрос, чтобы он хотя бы обработался. В менюшных играх все варианты уже заботливо выставлены на обозрение пользователя, поэтому парсерные игры умерли и воскресать явно не собираются.
        Кстати, что-то эту самую Unity ругают даже закоренелые юниксоиды, хвалебных отзывов удивительно мало.
        Ну и гуглоочки приведут нас отнюдь не к текстовому вводу, а к чему-то вроде этого.
          0
          Уважаемые коллеги!

          Хочу обратить ваше внимание на некоторые нюансы:
          1. Мы говорим не о простом текстовом в вводе, а об интеллектуальной текстовой строке. То есть с функциями самообучения, автокомплита, прогнозирования.
          2. Когда вы говорите о том, что мол надо запоминать команды, вы как-то забываете, что оконный интерфейс тоже является стандартизованным. То есть мы, залезая в меню Файл надеемся встретить там команды «Создать», «Открыть» и «Сохранить», а отнюдь не «Забацать», «Всосать» и «Уработать на диск». И эти типовые ситуации не просто известны из народных преданий, а прописаны в многочисленных гайдлайнах. Имеется вполне конкретная сложившаяся десятилетиями система команд, которые всем известны и присутствуют в каждом вменяемом приложении. Специфические для приложения команды все равно надо учить. Кроме этого, прошу вспомнить, как неприятно было лазать по этим бесконечным многоуровневым меню.
          3. Текстовая строка в качестве командной используется и сейчас в огромном количестве приложений, особенно для профессионального применения, CAD системы, программирование и, в конце концов, игры. Я уже не говорю о строке ввода поисковых систем.

          Теперь насчет перехода к голосовому вводу. Я лично считаю, что переход к голосовому вводу от текстового ввода к вводу голосом — один шаг.

          Что касается фильма, на который ссылается Алексей, я не вижу противоречий с концепцией. Только я бы порекомендовал представить постоянную необходимость тыкать перстом (реальным или виртуальным) или того гляди крутить головой или глазами. Я бы весьма быстро утомился.

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

          Кстати, про голосовой ввод. Если вы считаете, что говорить в публичном пространстве проблема, то есть вот такие варианты: sonews.ru/16/3151.html А Моторола вообще запатентовала nvworld.ru/news/motorola-wanna-to-tattoo-microphones/

          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

          Самое читаемое