+  HandyCache форум
|-+  Главная категория» Общие вопросы» Взаимодействие программы с пользователем
Имя пользователя:
Пароль:
Страниц: [1] 2 3 ... 5   Вниз
  Отправить эту тему    Печать  
Автор Тема: Взаимодействие программы с пользователем  (Прочитано 66939 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« : 21 января 2007, 03:01:15 »

В разделе "Новые предложения" есть тема "Необходим ли список "Запись в кэш". Очень много постов и просмотров, и все никак не сойдемся. У меня есть мнение, что сделать это будет тяжело, потому что имеются расхождения в более общем вопросе: какой лучше быть логике взаимодействия пользователя с программой и почему.
Именно этот вопрос выношу на обсуждение в этом топике и прошу высказаться как давних, так и новых пользователей, и конечно, автора программы.
Теперь к сути.

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

а) Исходя из изложенного, целям пользователя будет соответствовать три хранилища: список "Условия устаревания данных", список "Запись истории" и "Черный список". Таким является подход к взаимодействию с программой, позволяющий пользователю общаться с ней в терминах своих непосредственных целей, не углубляясь в вопросы организации записи/чтения в кэш (при каком условии и что именно туда пишется и оттуда читается), и оставаясь при этом уверенным, что кэш организован и используется максимально эффективно с точки зрения экономии как денег/времени, так и дискового пространства.

б) Имеет место также подход, когда программа не общается с пользователем непосредственно в терминах его целей и требует их перевода в доступный ей вид. Тогда для обеспечения взаимодействия с программой пользователь должен трансформировать свои первичные цели, и привести их в вид, понятный программе. В нашем случае программа понимает постановку целей в терминах условий записи в кэш/чтения из кэша. Соответственно пользователю необходимо изучить вопросы организации записи/чтения в кэш и расчленить свою изначальную цель на соответствующие подцели, понятные программе (распределить ее по спискам "Белый список", "Только из кэша", "Не обновлять" и "Запись в кэш"). Для упрощения этой задачи программа предоставляет очень большую гибкость в способах разбиения на подцели (одну и туже цель можно многими способами определить с использованием различных комбинаций списков "Только для кэша", "Запись в кэш", "Белый список", "Не обновлять" и правил в этих списках).

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

Плюсы: (открыто для добавления/удаления)
  - устранение у пользователя необходимости разбивать основную цель на неочевидные для него подцели и как следствие:
   - упрощение логики пользователя при работе с программой, упрощение обучения эффективной работе;
   - уменьшение возможности постановки пользователем противоречащих друг другу подцелей;
   - снижение риска ошибки;
  - устранение избыточности вариантов реализации намеченной цели, что также ведет к снижению риска ошибки;
(Любая ошибка ведет к несовпадению результатов работы программы с ожидаемыми /видим в браузере не то, что хотим и наоборот, экономия не оптимальна, размер кэша на диске необоснованно увеличен и т.п./);
  - общая "разгрузка" пользователя путем перекладывания на программу вопросов организации записи/чтения в кэш;
  - существенно легче разобраться в чужой логике при заимствовании комплекта чужих настроек.

Минусы: (открыто для добавления/удаления)
  - для давних пользователей необходимость отказа от выработанных привычек;
  - для автора временнЫе и трудовые затраты на соответствующее изменение логики взаимодействия программы с пользователем.


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

P.S. Если слишком замудрил, простите. Если надо, приведу конкретные примеры.
      Просьба автора и давних пользователей не пинать сильно ногами, т.к. неприятный осадок от темы остается именно у Вас. Сам скажу, что являюсь давним и привык ко всему, и почти автоматически перевожу "цели в подцели". Но если можно сделать лучше для себя и намного лучше для новичков или "Непродвинутых" пользователей, почему бы не обдумать это?!
« Последнее редактирование: 21 января 2007, 03:10:30 от Михаил » Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #1 : 21 января 2007, 11:28:37 »

Михаил

М-да, "Тебе бы книжки писать, гражданин-начальник!"   (с) Фильм: "Место встречи изменить нельзя" Улыбка

Фактически, ты предлагаешь переписать HandyCache "с нуля"! Но это будет уже совсем другая программа, не HandyCache!

Может, ты сам напишешь свой кэширующий прокси-сервер, который будет отражать твою логику и будет "намного лучше для новичков"?...
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #2 : 21 января 2007, 11:43:34 »

DenZzz
Я понял это так: в твоих глазах указанные минусы перевешивают названные плюсы. Вот и все. Ерничать не обязательно.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #3 : 21 января 2007, 12:21:23 »

Михаил

Цитировать
Я понял это так: в твоих глазах указанные минусы перевешивают названные плюсы. Вот и все.

Просто "плюсы", перечисленные тобой, кажутся мне неочевидными! Я это уже говорил в твоей теме "Необходим ли список "Запись в кэш": у нас разное видение основных целей и подцелей, которые ставит перед собой пользователь! Разное понятие логики и удобства для пользователя!

Пользователи фактически уже "проголосовали" за существующую логику работы HC своим интересом к программе и ее популяризацией! Согласись, если бы проект был неудачен, то про него бы уже давно забыли! Значит, есть что-то в HC, что понравилось довольно широкому кругу пользователей! И неизвестно, как они отнесутся к предлагаемому тобой кардинальному изменению концепции и логики работы HC! Нельзя исключать, что это оттолкнет от HC часть давних пользователей и новых не привлечет!

В свете данного контекста перечисленные тобой "минусы":
Цитировать
Минусы: (открыто для добавления/удаления)
  - для давних пользователей необходимость отказа от выработанных привычек;
  - для автора временнЫе и трудовые затраты на соответствующее изменение логики взаимодействия программы с пользователем.
способны перевесить любые баснословные "плюсы" кардинального изменения логики работы HC!
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #4 : 21 января 2007, 12:33:24 »

DenZzz
Спасибо за аргументированное выражение позиции. Только уточни все-таки: она такая из-за неочевидности "плюсов" (их можно обсудить более развернуто и убедиться в их наличии/отсутствии) или из-за силы "минусов", невзирая на то, какими бы не были плюсы?
Давай теперь слушать других.
« Последнее редактирование: 21 января 2007, 12:39:31 от Михаил » Сообщить модератору   Записан
NothingAnother
Beta tester
*****

Репутация: +7/-2
Offline Offline

Сообщений: 434

Spoiler


« Ответ #5 : 21 января 2007, 12:55:02 »

неочевидности "плюсов"
Мой ответ, ка юзера -да
Цитировать
силы "минусов"
Мой ответ, как кодера - да
« Последнее редактирование: 21 января 2007, 13:23:19 от NothingAnother » Сообщить модератору   Записан

Мы тоже не всего читали Шнитке!..
© В. Вишневский
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #6 : 21 января 2007, 13:54:07 »

Михаил
Хорошо пишешь. Но по сути предлагаемого я никак не отделаюсь от ощущения, что "те же яйца - вид сбоку". Как мне представляется - да, действительно можно упростить сруктуру списков, но зато сами списки усложнятся. Т.е. благая цель облегчить пользователю разбирательство с программой приведет к обратному: к непоняткам в списках.

Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #7 : 21 января 2007, 17:08:06 »

Rick
Нет, о необходимости упрощения структуры списков речи как раз нет (и те три списка, которые я указал - это сырой экспромт и могут прирасти еще какими-нибудь). Зря я не акцентировал это в первом посте, хотя хотел.
Я хотел донести другое - какой бы не была структура списков (проще или сложнее, чем сейчас), но есть два принципиальных выбора обеспечения взаимодействия пользователя с программой:
  - программа должна подстраиваеться под естественный язык и цели пользователя;
  - пользователь для реализации своих целей должен трансформировать их, подстраиваясь под язык и структуру программы.

DenZzz
NothingAnother

Перефразирую так:
Если гипотетически эти "плюсы" (которые сейчас неочевидны), все-таки есть и в полном объеме, перевешивают ли они в ваших глазах "минусы".

Чтоб все не выглядело "дележкой шкуры неубитого медведя" или нудной теорией , для небольшой подсветки "плюсов" как только подосвобожусь приведу, пожалуй, пару конкретных примеров...
« Последнее редактирование: 21 января 2007, 17:33:22 от Михаил » Сообщить модератору   Записан
NothingAnother
Beta tester
*****

Репутация: +7/-2
Offline Offline

Сообщений: 434

Spoiler


« Ответ #8 : 21 января 2007, 17:56:55 »

Чтоб все не выглядело "дележкой шкуры неубитого медведя" или нудной теорией , для небольшой подсветки "плюсов" как только подосвобожусь приведу, пожалуй, пару конкретных примеров
С этого надо было начинать - из абстрактных плюсов и вытекает "неочевидность" (а вот минусы вполне конкретны Подмигивающий)
Сообщить модератору   Записан

Мы тоже не всего читали Шнитке!..
© В. Вишневский
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #9 : 21 января 2007, 18:32:15 »

Михаил

Цитировать
Если гипотетически эти "плюсы" (которые сейчас неочевидны), все-таки есть и в полном объеме, перевешивают ли они в ваших глазах "минусы".

Как можно об этом судить, если эти "плюсы" абстрактны и неочевидны?! Подмигивающий
Ждем конкретных примеров!
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #10 : 21 января 2007, 19:29:27 »

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

Сразу небольшое пояснение. Здесь и далее под "просмотром истории" понимаем просмотр истории из соображений, не связанных с экономией денег/времени (как это выразить более точным и коротким термином, пока не придумал, но это не равно нынешнему "автономному просмотру"). Такие соображения возникают при отсутствии у пользователя постоянного доступа к интернету. Как я выделил в первом посте, "просмотр истории" - это одно из трех основных предназначений программы.

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

1. Пусть пользователь имеет круглосуточный доступ в интернет (например, dial-up или DSL у себя дома). Таких, я думаю, большинство, и я в том числе из них. Тогда у него начисто отсутствует потребность "просмотра истории", ведь он в любой момент может заглянуть в интернет. Все основные цели этого пользователя при работе с программой сводятся к экономии денег/времени и блокированию нежелательного или несущественного контента.
Что ему надо сделать сразу после установки программы или получения нового комплекта настроек:
  - подход а): напрямую целеуказать это программе, отключив список "просмотр истории". И это все. "Я не хочу пользоваться возможностью "просмотра истории";
  - подход б): разбиваем цель на подцели и привязываем к языку программы: "У меня есть комбинация списков и правил в них: "Белый список", "Только из кэша", "Не обновлять" и "Запись в кэш". Они совместно определяют как вопросы экономии, так и "просмотра истории". Надо изменить их все или часть из них таким образом, чтобы в итоге мы достигли исключения записи в кэш контента, относящегося к "просмотру истории" и не относящегося к экономии." М-да... я лично это сделать в общем случае затрудняюсь. Пожалуй, нужно определить для целей последующего удаления все те правила всех этих списков, которые, не влияя на экономию, влияют на "просмотр истории". Причем определить это не отдельно в каждом списке, а в их комбинации. Т.е. по сути выделить для себя в уме список "просмотр истории" из варианта а). Если это удастся сделать не в полном объеме, то можно быть уверенным в том, что в кэш будут писаться лишние данные.
И это только первое действие после установки программы.

Позже приведу пример еще одного первоначального действия при установке программы.
А пока можно обсудить этот пост.
« Последнее редактирование: 21 января 2007, 19:38:58 от Михаил » Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #11 : 21 января 2007, 20:22:34 »

Михаил

Цитировать
1. Пусть пользователь имеет круглосуточный доступ в интернет (например, dial-up или DSL у себя дома). Таких, я думаю, большинство, и я в том числе из них. Тогда у него начисто отсутствует потребность "просмотра истории", ведь он в любой момент может заглянуть в интернет. Все основные цели этого пользователя при работе с программой сводятся к экономии денег/времени и блокированию нежелательного или несущественного контента.

Почему ты постоянно противопоставляешь "экономию денег/времени" и "просмотр истории"? Эти два понятия лично для меня неделимы!

Да, у меня есть постоянный круглосуточный доступ в Интернет, НО я постоянно использую "просмотр истории" ("автономный режим") именно для экономии времени/денег, а не потому, что у меня нет возможности заглянуть в интернет!

Конкретный пример: старые страницы форума обновляются редко и поэтому я редко гружу их повторно из Инета, т.к. это лишние затраты времени/денег! Я просто нажимаю горячую клавишу включения "автономного режима" и загружаю нужную страницу из кэша без обращения в Инет, т.к. я на 95% уверен, что страница там не изменилась! Если же у меня есть в этом сомнение (вероятность 5%), то только в этом случае я гружу страницу повторно из Инета! На этом я дополнительно экономлю много времени/денег!

Поэтому твоя основная предпосылка:
Цитировать
Пусть пользователь имеет круглосуточный доступ в интернет (например, dial-up или DSL у себя дома). Таких, я думаю, большинство, и я в том числе из них. Тогда у него начисто отсутствует потребность "просмотра истории", ведь он в любой момент может заглянуть в интернет.
- лично для меня не выдерживает никакой критики, т.к. она неверна в корне!
Я всегда имею "круглосуточный доступ в интернет", НО часто при этом пользуюсь "просмотром истории" для целей экономии времени/денег! Уверен, что я не один такой...
Сообщить модератору   Записан
NothingAnother
Beta tester
*****

Репутация: +7/-2
Offline Offline

Сообщений: 434

Spoiler


« Ответ #12 : 21 января 2007, 20:31:25 »

Пусть пользователь имеет круглосуточный доступ в интернет (например, dial-up или DSL у себя дома). Таких, я думаю, большинство, и я в том числе из них. Тогда у него начисто отсутствует потребность "просмотра истории", ведь он в любой момент может заглянуть в интернет. Все основные цели этого пользователя при работе с программой сводятся к экономии денег/времени и блокированию нежелательного или несущественного контента
Посыл изначально неверен сам по себе!
Пока писал ответ, DenZzz ответил раньше - ну, млин, фантастика - чуть ли не слово в слово... Пришлось всё подтереть, дабы не быть заподозренным в плагиате Подмигивающий
Сообщить модератору   Записан

Мы тоже не всего читали Шнитке!..
© В. Вишневский
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #13 : 21 января 2007, 21:07:29 »

Михаил
Цитировать
подход а): напрямую целеуказать это программе, отключив список "просмотр истории". И это все. "Я не хочу пользоваться возможностью "просмотра истории";
Ну не хочешь - так не хочешь, дело хозяйское. Т.е. ты отключаешь список "Запись истории" и у тебя по твоей модели остаются списки  "Условия устаревания данных" и "Черный список". Вопрос: какие данные будут устаревать если запись истории не ведется?
Как вообще разделить, что относится к просмотру в оффлайне, а что для экономии времени/трафика при повторной загрузке одних и тех же данных?
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #14 : 21 января 2007, 21:31:32 »

DenZzz
NothingAnother
Rick

Мы друг друга недопоняли (плохо объясняю, простите). Попробую по пунктам:
На мой взгляд, основное назначение программы - предоставить пользователю возможность:
  1. экономить собственные деньги и время при работе в интернете (в том числе и путем использования "автономного режима");
  2. в условиях ограниченного по времени доступа в интернет скачать интересующую информацию не читая, а затем просматривать историю, когда интернет не доступен (подчеркиваю, не из соображений экономии, а именно из-за того, что интернет доступен не постоянно); Пример из жизни: мой знакомый имеет ноутбук, но у него дома нет доступа в интернет. Приходится на работе проситься подключиться на чуть-чуть к сети и быстро пролистать там практически не читая все, что хочется. А вечером дома в спокойной обстановке все прочесть. Экономия времени/трафика при этом его нисколько не волнует, главное, чтоб кэш не рос за счет прибывания ненужных данных. Именно это я обозвал "просмотром истории". Еще раз подчеркиваю, что термин, может, неудачный (другого просто не придумал) но не надо путать его с "автономным режимом", который в нынешней редакции программы нужен для реализации как этой цели, так и цели 1.
  3. запрещать приход из сети и/или отображение данных, которые он категорически не хочет получать (они неприемлемы для него по морально-этическим, эстетическим или иным соображениям, кроме соображений экономии) либо безразличен к их наличию.

Есть ли у нас в этом вопросе согласие? (да/нет/почему)
« Последнее редактирование: 21 января 2007, 21:41:18 от Михаил » Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #15 : 21 января 2007, 21:46:13 »

Еще раз подчеркиваю, что термин, может, неудачный (другого просто не придумал) но не надо путать его с "автономным режимом"...
Есть ли у нас в этом вопросе согласие?
Лично у меня нет понимания. Улыбка
Чем для НС отличается запись данных в кэш в зависимости от целей преследуемых пользователем? Что так писать в кэш, что этак - независимо от того, хочет ли пользователь потом просматривать эти данные в оффлайне или хочет за счет них ускорить загрузку в будущем.
Чем для пользователя должно различаться указание своих целей?
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #16 : 21 января 2007, 22:01:29 »

Михаил

И у меня нет понимания!
Как ты собираешься разделить "автономный режим" и "просмотр истории" в плане целей, настроек, взаимодействия и общего кэша?!
Как указывать, что кэшировать для каждой цели? И чем будут отличаться правила кэширования? Кэш будет один или 2 разных?
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #17 : 21 января 2007, 22:04:34 »

Rick
DenZzz


Чтоб не путаться, не забегаем вперед, пока не придем к консенсусу здесь. Сначала скажи, есть ли согласие, что три названные пункта - основные и независимые друг от друга возможности, предоставляемые НС пользователю? Он может пользоваться ими всеми, а может - некоторыми. По-моему, список полный - больше НС ничего ему дать не может (не берем дозвон и иные второстепенные функции).
Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #18 : 21 января 2007, 22:21:11 »

Сначала скажи, есть ли согласие, что три названные пункта - основные и независимые друг от друга возможности, предоставляемые НС пользователю? Он может пользоваться ими всеми, а может - некоторыми. По-моему, список полный - больше НС ничего ему дать не может (не берем дозвон и иные второстепенные функции).
Нет. Есть несогласие: 2 пункт по сути есть "второстепенная функция" - можно говорить о повышении ее удобства (например что бы НС сам скачивал сайты целиком), но не о какой-то основопологающей возножности программы/потребности пользователя.
Основное - это записать данные в кэш и взять их оттуда. А для чего: для просмотра ли в автономке, для ускорения загрузки страниц или для экономии трафика - не принципиально. Имхо.
Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #19 : 21 января 2007, 22:28:20 »

Rick
Цитировать
Основное - это записать данные в кэш и взять их оттуда. А для чего: для просмотра ли в автономке, для ускорения загрузки страниц или для экономии трафика - не принципиально.

Не понял, для тебя первично, чтобы программа писла/читала в кэш? А для чего она это делает - не важно?! Я надеюсь, это очепятка.

Цитировать
Есть несогласие: 2 пункт по сути есть "второстепенная функция"
Для того моего друга - это не второстепенная, а основная функция. Есть множество людей, у которых интернет дома отсутствует (отсталая страна Россия в этом плане, далеко не везде есть возможность подключиться и не у всех есть средства платить) и они ходят с ноутбуками/флэшками на работу, и подключаются по WiFi заходя в спец. кафе, и находят другие точки доступа. Для всех них эта функция основная, а до экономии трафика им дела нет.
« Последнее редактирование: 21 января 2007, 22:36:39 от Михаил » Сообщить модератору   Записан
Страниц: [1] 2 3 ... 5   Вверх
  Отправить эту тему    Печать  

 
Перейти в: