can3p (can3p) wrote,
can3p
can3p

О пользовательских интерфейсах

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

Интро

Я подписан на обновления сайта gnomefiles и наблюдаю, как с частотой раз в месяц появляется очередной “новый” плеер, который обязательно прост в управлении и обладает понятным интерфейсом. Пара примеров: раз, два, три, четыре, пять.

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

Если рассматривать внутреннюю начинку, то все они используют gstreamer и поэтому могут проигрывать одно и то же в одинаковом качестве. Только отдельные крупные проекты могут похвастать собственным набором кодека, например vlc.

Теперь подойдем к главному: к пользовательскому интерфейсу. И вот здесь все эти программы одинаково ужасающе неудобны. Медиа-библиотеки не решают следующие проблемы:

  • Есть несколько папок с музыкой, в одной хранится отсортированная музыка, в другой - только скачаная. Послушать хочется в первую очередь новую, но в ней чаще всего бывают сломанные теги или странный формат. Из-за различий в именовании в библиотеке появляются неопознанные песни, которые путаются под ногами, нет возможности выбрать нужную.
  • А что, если у нас сборники? Вводить нового исполнителя VA? тогда теряется информация о реальном исполнителе, а ведь песня должна быть видна и там. С другой стороны сборник он на то и сборник, что хочется слушать его целиком и не разыскивать по всем исполнителям в отдельности. С библиотеке есть такая смысловая единица - альбом, но нет сборников.

У обычных плееров другой недостаток. Узким местом является диалог добавления файлов. GTK диалог добавления файлов просто ужасен. Во-первых он одинаков и для выбора файлов и для выбора каталогов, в результате получаем неочевидное поведение - если выбрать каталог, то он должен в одном случае при нажатии кнопки открыть перейти в каталог, в другом - выбрать этот каталог. Еще диалог gtk отличается тем, что выбрав элемент списка, некуда девать фокус. А если нажать отмену, то сбросится текущий выбранный каталог. Просто мрак.

В windows другой момент - там два различных диалога, и это добавляет боль другого рода. Если выбран один диалог, то другой можно открыть только закрыв текущий, и опять таки сбросив директорию до которой так долго добирался. Раздражает до безумия.

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

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

  1. Создать новый плейлист, добавить песню туда. Если нет поддержки нескольких плейлистов, то добавить в текущий (не заменить ненароком!), прослушать песню, удалить из плейлиста и найти в списке песню, которая играла до этого. Правда до этого обычно просто не хватает терпения.
  2. В случае видео ролика дело еще сложнее с той стороны, что большинство плееров именно либо аудио либо видео плееры, соответственно надо ставить на паузу аудио плеер, запускать видео плеер, выбирать файл. В случае ссылки все похоже с той разницей, что запускать надо другое приложение.

По-моему, слишком много мороки для такого простого действия.

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

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

Точка фокуса

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

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

Значительно удобнее было бы, чтобы можно было осуществлять первичную обработку файлов не уходя из файлового менеджера! Пример: есть папка с фотографиями, которые только что перегали из фотоаппарата. Часть из них надо повернуть. Что можно сделать? В GNOME вариантов нет - надо запускать программу типа eog и поворачивать фотографию по одной,  при этом в файловом менеджере фотографии могли быть отсортированы как угодно, а в просмотрщике они будут идти строго по алфавиту, что может совсем не отвечать замыслу пользователя. Под windows это действие можно осуществить из проводника, но только в одном режиме просмотра в котором опять же можно поворачивать фотографии только по одной, тогда как уже при достаточно мелких миниатюрах можно заметить, какиме именно фотографии нужно повернуть. Достаточно очевидный выход был бы в том, чтобы файловый менеджер предоставлял возможность выбрать произвольную группу файлов и произвести операции над их общими свойствами, в данном случае повернуть. Таким образом для огромного количества ситуаций отдельная программа для просмотра изображений не нужна!

Абсолютно такая же ситуация с музыкой. В большинстве ситуаций музыка либо уже рассортирована по папкам, и медиа-библиотека будет просто дублировать существующее положение вещей, либо все лежит в полном беспорядке, и медиа-библиотека тут ничем помочь не может. Если все же какая-то ее функциональность нужна, то речь идет о каких-то специфических функциях, для которых и должно быть создано обособленное от основного потока работы приложение.  В результате оказывается, что самы удобным средством для работы с музыкальной коллекцией является опять таки обычный файловый менеджер, потому что он предоставляет самые удобные средства для навигации, а в случае, например, nautilus, еще и вкладки, что делает работу еще более удобной. В этом случае решается и проблема сборников, и нахождения музыки в разных местах. Надо сказать, что в этом подходе нет ничего нового, drag’n'drop позволяет сейчас это делать. Новое заключается в том, чтобы убирать старые методы взаимодействия в файлами ввиду их неэффективности.

Так сделано в плеере среды E17 - Eclair. В этой программе добавлять файлы в плейлист можно только перетаскивая файлы из файлового менеджера. С другой стороны сделано это неочеидно  - приложение запускается отдельно, и в нем отсутствуют кнопки навигации. Если отдельно запустить файловый менеджер, то при выборе мультимедиа файлов отсутствуют упоминания об Eclair. Нужна некоторая привычка и, я бы сказал, удача, чтобы сразу связать одно с другим :).

Вообще, стоит рассмотреть, какие функции плеера обычно используются. Я использую только две: перетаскиваю в список воспроизведения файлы и нажимаю кнопку play. Нужно ли для этого отдельное приложение? Нет, не нужно. Подобные действия должна иметь возможность выполнять система.

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

Заключение

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

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

Спасибо за внимание.


Оригинал: http://blog.dpetroff.ru/tech/user_interfaces
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 6 comments