vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
Вообще обсуждение уже принесло немало интересного, хотя постоянно норовит свалиься куда-то на низкий уровень - в обсуждение шин сообщений и прочих API. А мы вообще-то еще требования к UI не сформулирвали.

Но вот [livejournal.com profile] rainbow_beast просветил меня по поводу разницы между mind maps и concept maps.

Хотя я не уверен, что термин mind mapping не подходит, но все же в названии "Концептуальный интерфейс" что-то есть. Постмодерном попахивает.

На самом деле интерфейс должен быть в первую очередь самообучающим. Не самообучающимся хотя это тоже не повредит, а именно обучающим - self-tutoring или self-сouching. Причем обучать он должен в первую очередь именно конецпциям, лежащим в основе той или иной деятельности за компьютером.

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

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

Есть еще контекст текущей активности. Который тоже может выходить за пределы текущей сессии. Например активность "диалог в чате с другим человеком" явно захватывает кусочек сессии второго собеседника.

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

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

Кстати о безопасности, Систему следует планировать исходя из того, что любая из компонент может содержать если не злонамеренный код, то опасные ошибки. И везде где возможно использовать разграничения доступа к памяти, ограничения доступа к файловой системе и т.д. В качестве образца мы имеем по крайней мере две модели - классическую модель Unix и неклассическую Android с контрактами приложений. Там, правда, очень плохо сделано разграничение доступа к файловой системе. Можно еще посмотреть на остерхутовскую модель из SafeTcl.

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

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

У окна четыре стороны и можно их закрепить за разными типами связей.

Возможно, стоит позаимствовать из Ashton Tate Framework концепцию "изнанки фрейма". Там на изнанке фрейма можно было писать скрипт, генерирующий содержимое фрейма. Здесь более логичным является наличие на изнанке пояснительного (гипер)текста про то что можно с этим фреймом делать. Скрипт там тоже может быть, на то еcть literate programming.

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

Идеями Раскина насчет полностью modeless интерфейса злоупотреблять не стоит. Смена взгляда на один и тот же информационный объект иногда вполне оправдана. Но только надо оформить смену режима как переход по ссылке в concepts map. Вот до сих пор это у нас был текст, который мы набирали, и ассоциировался он с набором инструментов для работы с содержимым, а сейчас это стал верстаемый документ, и набор инструментов стал совсем другой.

Date: 2012-08-15 08:44 am (UTC)
From: [personal profile] hungry_ewok
/пожимая плечами/
Это, я бы сказал, сущность несколько избыточная. У того кто работает с хоткеями постоянно - они уходят в мышечную память а накрайняк можно посмотреть конфиг hotkey manager'a или icevm, где оно все и прописано. У пользователя стандартного ленивого - что ни покажи, что ни напиши - читать и делать сколь угодно "естественные жесты" он не будет.

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

Date: 2012-08-15 09:14 am (UTC)
From: [identity profile] rainbow_beast.livejournal.com
Именно. А заодно - показать, что существует несколько свзязанных функций, о которых пользоватлеь мог забыть или не знать. Иначе получается emacs, в котором используется десяток команд из тысяч.

Date: 2012-08-15 10:52 am (UTC)
From: [personal profile] hungry_ewok
Просмотр одного конкретного текстового файла/запуск одной конкретной утилиты конфигурации где содержится вся инфа о настройках - это не "с биноклем из окна". И да, пользователь ленив. Избирательно ленив - как показывает практика - рядовой пользователь на счет раз заведет у себя куда как более лютую помойкуразветвленую структуру каталогов и файлов и будет на ура ориентироваться где что у него лежит, а вот на предложение изучить что-то, что даже поможет ему в работе - "ай нет, это так слоожно я ничего не понимаю." Так что судьба таких "напоминалок" - быть выключенными нафиг у опытных, и быть незамеченными у остальных.

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

Date: 2012-08-15 01:44 pm (UTC)
yurikhan: (Default)
From: [personal profile] yurikhan

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

Логично распространить эту парадигму также и на запуск программ.

Date: 2012-08-15 03:49 pm (UTC)
yurikhan: (Default)
From: [personal profile] yurikhan

Гномо2вское, kde3’шное, xfce’шное и виндовое (до XP включительно) меню программ я знаю и люблю. Однако, из них всех более-менее нормальное назначение горячей клавиши есть, боюсь, только у винды. Отображения (за которым не нужно было бы лазить в диалоговое окошко Properties) нет ни у кого.

Более новые версии сделали вместо обозреваемого меню слабоструктурированную кучу с поиском, и это плохо.

Система с командами «открыть документ foo.html» вместо «запустить программу firefox с параметром командной строки foo.html» хороша ровно до тех пор, пока у пользователя есть понимание, что за этим всё равно стоят программы, и концептуальная модель того, как MIME-типы (или расширения файлов) отображаются на конкретные программы и как это настраивать. Иначе какая-нибудь свежеустановленная программа захватывает себе расширение (или MIME-тип), и всё-капец-ступор-вирус-переустановка.

OK, ориентируемся на пользователя умного. Но я всё равно запускаю LibreOffice Writer (возможно, горячей клавишей) и из File|Open Recent выбираю последний документ, а не иду в файловый менеджер/Documents/…/foo.odt.

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

May 2025

S M T W T F S
    1 2 3
4 56 7 8 9 10
11 12 131415 1617
1819202122 2324
25262728293031

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 24th, 2025 11:03 pm
Powered by Dreamwidth Studios