metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-06-17 03:20 pm

Сектантско-юзабилити вопрос

У ребе [livejournal.com profile] belnetmon дискуссия про браузер Сафари. И в ней маководы утверждают, что окна настроек без явных кнопок "Применить" и "Отменить" это есть хорошо.
Весь мой опыт обслуживания бухгалтерии и работы в неудобных условиях с чужим кривым софтом свидетельствует об обратном - любые операции и изменения должны быть отменяемы и не приводить к изменениям без явной на то команды, ибо на том конце настроек могут оказаться не clear-type шрифты, а управление задвижкой на газопроводе. Или проводка москалям за газ на пару сотен миллионов баксов. Или еще какая-нибудь трасца, от которой потом юзера в истерике звонят мне "я тут что-то нажала и у меня все поменялось".

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

[identity profile] dizel-by.livejournal.com 2009-06-17 12:28 pm (UTC)(link)
Полностью согласен

[identity profile] mr-st.livejournal.com 2009-06-17 12:30 pm (UTC)(link)
Все ж управление урановым ломом в реакторе и интерфейс для обывателя это сильно разные вещи.

[identity profile] lionet.livejournal.com 2009-06-17 12:33 pm (UTC)(link)
Read Apple Human Interface Guidelines. Там говорят, когда надо, а когда не надо применять этот подход.

[identity profile] metaclass.livejournal.com 2009-06-17 12:38 pm (UTC)(link)
Я почти уверен, что психи станут пихать этот интерфейс куда не попадя. Я такое уже видел.

[identity profile] g-rub.livejournal.com 2009-06-17 12:40 pm (UTC)(link)
Из опыта разработки и суппорта на базе 1С: количество проблем "я нажала и че-то поменялось" примерно равно количеству проблем "я все сделала, а оно ничего не меняет".

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

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

[identity profile] henu3detb.livejournal.com 2009-06-17 12:45 pm (UTC)(link)
"Обсуждают браузер Сафари... Весь мой опыт обслуживания бухгалтерии и работы в неудобных условиях с чужим кривым софтом..."

Что-то здесь не очень гладко :)

[identity profile] metaclass.livejournal.com 2009-06-17 01:01 pm (UTC)(link)
Все гладко. Завтра придет молодежь, начитавшаяся про мегаинтерфейсы от эпплов и начнет это пихать в софт производственного назначения. Типа программаторов приборов, например - "а чо, нажал чекбокс и сразу в прибор записалось".

[identity profile] henu3detb.livejournal.com 2009-06-17 01:03 pm (UTC)(link)
Ну пока она не пришла, рассуждать об этом рано.

[identity profile] aamonster.livejournal.com 2009-06-17 01:31 pm (UTC)(link)
Иногда хорошо. Когда реакция на поворот ручек быстрая и откручивание ручек в исходную позицию возвращает систему к исходному состоянию. Впрочем, и тут кнопочки undo-redo рулят.

С текстом - обычно неудобно, да.

[identity profile] volodymir-k.livejournal.com 2009-06-17 01:47 pm (UTC)(link)
А когда придёт, будет уже поздно.

[identity profile] sergiej.livejournal.com 2009-06-17 01:49 pm (UTC)(link)
А вот виндосовский реестр меня всегда волновал, вернее его эдитор, там очень неявен факт записи изменений, а штука дико критичная :)

[identity profile] vp.livejournal.com 2009-06-17 02:01 pm (UTC)(link)
кстати да, там кнопки "Применить" явно не хватает

[identity profile] sergiej.livejournal.com 2009-06-17 02:05 pm (UTC)(link)
А ещё больше не хватает кнопки "откатить", любая г-нопрограмка может похерить что угодно и восстанавливать только с бубнами - да и то до версии которая была при старте системы, а если удалось рестартануть то вообще пролёт.
Линуксы, кстати, в этом плане не лучше, вот почему никто не сделает систему в которой все настроечные файлы будут с автоматическим контролем версий.

[identity profile] henu3detb.livejournal.com 2009-06-17 02:11 pm (UTC)(link)
Я уже начинаю терять нить разговора. Мне нужно отказаться пользоваться браузером, потому что интерфейс гипотетически могут применить некая гипотетическая молодежь, которая гипотетически придет завтра и начнет делать некий софт производственного назначения?

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

И еще. Пока что молодежь, которая делает мегаинтерфейсы не сподобилась сделать как у эпла. На одном проекте были "L"-образные кнопки, воркспейсы, работа нескольких пользователей (это в рамках одного десктопного приложения). Вместо визардов - табы. А нажал комит раньше времени, выведут ошибку, мол чего не заполнил поле на другом табе? Ну и в таком духе. Так что эппл здесь просто мессия для молодежи.

[identity profile] theiced.livejournal.com 2009-06-17 03:45 pm (UTC)(link)
Ребеееее. Вы таки путаете разные вещи.

1. Транзакционные вещи. Например открытие заслонки газопровода - когда надо 666 раз переспросить действительно ли мы хотим её открыть и после (или в процессе) открытия менять ещё какие то параметры. Это НЕ НАСТРОЙКИ.

2. Настройки проги. Как то там фонт или ещё какая нить хрень типа настроек валют. Там применение никакое не нужно. Ибо если юзер туп и меняет хер знает что - то он наменяет, надавит применить, подтвердит три раза и только потом поймёт что он дибил (вернее что программа опять не работает и разработчик козёл).

[identity profile] theiced.livejournal.com 2009-06-17 03:52 pm (UTC)(link)
Ыыыы.

Ви таки что? Как не сделают.

sudo su ; cd /etc ; hg init ; hg commit -m "`date`"

Всё.

[identity profile] theiced.livejournal.com 2009-06-17 03:53 pm (UTC)(link)
Вона у max_posedon вообще всё кроме /home и там /var вроде в репозитарии лежит.

[identity profile] theiced.livejournal.com 2009-06-17 04:01 pm (UTC)(link)
Опять же - есть специательные ФС с контролем версий.

[identity profile] theiced.livejournal.com 2009-06-17 04:05 pm (UTC)(link)
Сори.

sudo su ; cd /etc ; hg init ; hg add ; hg commit -m "`date`"

Вот так конечно же.

[identity profile] theiced.livejournal.com 2009-06-17 04:08 pm (UTC)(link)
>PS: Еще есть один момент с вводом текста в поля с заданным форматом(числа, даты, время). По идее, можно при этом показывать баллун типа "инвалид валуе", но вот сохранять очевидно "по изменению" здесь не выйдет - как юзера вводят данные, так подлежащая этому полю сущность изменится 20 раз за один сеанс ввода.

Коммит по ОнЭкзит. Опять же даты обычно не вводятся руками а выбираются из календарика.

[identity profile] metaclass.livejournal.com 2009-06-17 04:25 pm (UTC)(link)
За коммит OnExit надо нахуй убивать. Кто сказал, что пользователь вообще когда-нибудь с этого поля ввода уйдет?
У меня есть в обслуживании чужое приложение, которое похожим образом себя ведет - это пиздец нечеловеческий. Типа того, что пытаешся закрыть окно, нажимаешь на cancel - при этом возникает тот самый OnExit и начинаются сыпаться пиздецы.
А календарик в бухгалтерии, когда нужно ввести 200 платежек, а стол завален ведомостями и мышью шевелить негде - это нонсенс. Даты вводятся руками, календарики это там где нужно выбрать одну дату и все,а не когда нужно заполнить с клавиатуры 10-20-30 полей ввода.

[identity profile] theiced.livejournal.com 2009-06-17 04:40 pm (UTC)(link)
По ОнЭкзит с поля есессно. ФокусЛост оно там называеццо или как. Гуйню, к счастью, уже 100500 лет не программлю.

[identity profile] zamotivator.livejournal.com 2009-06-17 05:50 pm (UTC)(link)
Просто молодёжь и не только любит найдённые решения переносить на новые задачи.
Вот так и получится "нажал чекбокс - записалось в прибор". Не потому что интерфейс и подход плохой, а потому что человек пихает не глядя привычное, а RAHIG не читал.

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

Получаем парадокс.
1) Далеко не глупый знакомый, разрабатывающий под embedded считает идеалом TCL - т.к. 100% дуракоустойчивость
2) Владелец сего ЖЖ - кнопку "применить" а-ля windows way
3) Разработчики и (довольные) пользователи safari - on the fly.
А с умом применять то или иное решение, другими словами ВЫБИРАТЬ РЕШЕНИЕ ПОД ЗАДАЧУ мало кто умеет (я знаю что так нужно делать, стараюсь, получается не всегда (стереотипы, мать их)) - при таком рассмотрении windows - нечто среднее между TCL и Apple-style

[identity profile] vp.livejournal.com 2009-06-17 07:09 pm (UTC)(link)
Вот кстати про "делает код хрупким", замечание верное, если это там сделано влоб. В чем я сомневаюсь, чай авторы не из Отдела АСУ НИИ Торфа. Было бы интересно посмотреть, конечно, на каком программном варианте такого поведения они остановились..

[identity profile] vp.livejournal.com 2009-06-17 07:13 pm (UTC)(link)
дык а ты прикинь, что ты вводишь документ, набиваешь данные, тебе нужно для совершения опреции заполнить 10 полей. На какой OnExit мы будем реагировать, если тетка может банально все выполнить в другой последовательности и вообще туда не дойти? :)

Page 1 of 3