В топике
«Агрессивные «колючие» кнопки против закруглённых» развилась небольшая дискуссия по поводу расположения стандартных кнопок в диалоговых окнах («Да», «Нет», «ОК», «Отмена»). В этой статье я рассматриваю основные ошибки, которые допускают проектировщики интерфейсов в отношении диалоговых окон.
Диалоговые окна
Как часто вы попадаете в ситуацию, когда по привычке нажали на кнопку, ожидая получить один результат, а вместо этого получаете прямо противоположный? Или, скажем, «подвисали» над через чур заумным диалогом подтверждения выхода? А может встречались с вопросами из серии «Не сохранять?» и кнопки «Да», «Нет», «Отмена»? Виной этому является непонимание разработчиками «неписанного кодекса дизайна» — простых правил, которые никто не придумывал, но так уж сложилось. Данная проблема распространена в мире свободного ПО и почти отсутствует в продуктах крупных компаний, интерфейсы программ которых строго стандартизированы и тщательно продумываются. Давайте рассмотрим несколько примеров.
Microsoft Word

Это — хороший диалог. Он простой, в нем есть все, что нужно и нет ничего лишнего. Давайте по порядку:
- Сразу поставлен прямой и короткий вопрос: «Сохранить изменения?».
- Короткие, моментально понятные и легко воспринимаемые ответы: «Да», «Нет», «Отмена».
- Варианты ответа расположены в единственно правильном и удобном порядке.
- Правильный (в 90% случаев) ответ уже выделен — можно смело жать пробел и приступать к дальнейшей работе.
Но есть здесь и недочеты (один из них — корпоративный
, мать его, стандарт):
- Заголовок окна. Куда более правильней продублировать в нем суть вопроса — «Сохранить?». Но с другой стороны это хорошо, ведь этот вопрос может выскочить в тот момент, когда пользователь работает с другим приложением. Хотя опять же, с какого перепуга Word вдруг будет закрываться без участия пользователя, тем более, когда он работает с другой программой? «За» больше, чем «против». Следовательно, лучше продублировать вопрос в заголовке или, как компромисс, указать с вопросом название программы («Сохранить? — Microsoft Word»).
- Иконка. В продуктах Microsoft она призвана задавать тон диалога, но часто разработчики используют в качестве иконки не просто «тоновый» знак, а пиктограмму действия, если она присутствует. К примеру, так сделано в следующем примере с иконкой «Сохранить». Я не буду останавливаться на вопросе «Дискетка или HDD со стрелкой вниз», поскольку это выходит за рамки этого топика.
Теперь разберем по такому же принципу другой диалог.
GNU Image Manipulation Program (GIMP)

Это — плохой диалог. Он сложный, перенасыщен информацией. Пройдемся по списку:
- Вопрос представлен в слишком длинной форме и зачем-то добавлено «перед закрытием». Этот вопрос задается только при закрытии документа, так зачем же писать «перед закрытием»? Опять же зачем нужно уточнение «в изображении»? Я в графическом редакторе, капитан подсказывает, что в нем работают с изображениями. Все-равно, что 3D Max спросит меня «Сохранить изменения в наборе трехмерных моделей, покрытых текстурами %file_name%?»
- Слишком длинные варианты ответа, которые к тому же не соответствуют вопросу (привет, башорг!). Кнопки заставляют включать мозг, что бы понять, чего от меня хотят.
- Варианты ответа расположены в одним разработчикам понятном порядке. Почему именно «Нет», «Отмена», «Да»? Как бы намекают на «Чувак, твои поделки ужасны, не надо засорять винт»?
- Выделен неправильный вариант ответа. Предложение по-умолчанию должно выполнять какое-то действие одним движением пользователя. Представьте себе диалог установки ПО в Windows, где вместо «Далее» в каждом окне фокус будет прыгать на «Отмена». Глупо, не правда ли?
- Непонятно зачем добавлена фраза «Если вы не сохраните изображение, все изменения за последние 3 минуты будут потеряны». Возрадуйтесь, господа: я вычислил место работы Капитана Очевидность.
Но есть в этом окне и положительные моменты:
- Информативная иконка, сразу дающая понять, что речь идет о сохранении.
- Информативный (под сомнением) заголовок окна.
Чувствуете разницу в этих диалоговых окнах? Первое удобно, а второе — нет. Если проанализировать успешные продукты, можно выделить некоторые правила. В данном контексте, важнейшим правилом является порядок кнопок. Удобный вариант это «положительный, отрицательный, нейтральный» и никак иначе. Пользователи привыкли в таких ситуациях видеть первую кнопку — подтверждающую, а последнюю — отменяющую данный вопрос. Модальные окна вроде настроек будут рассмотрены ниже.
Какие отсюда можно сделать выводы:
- Задавать пользователю вопрос нужно максимально кратко, что бы не заставлять его полчаса думать над вопросом.
- Не использовать отрицательные вопросы («Не сохранять?» и «Да», «Нет», «Отмена»).
- Используйте только общепринятый порядок кнопок (положительный, отрицательный, нейтральный)
- Варианты ответа должны быть простыми и лаконичными. Это программа, которая должна быстро работать, а не семинар лингвистов, где можно болтать часами ни о чем.
- Не писать лишнюю информацию. Конечно круто, что вы считаете, сколько времени прошло с момента последнего сохранения, но пользователю фиолетово на это, а в диалоге это только отвлечет и, возможно, поставит в ступор или даже разозлит.
- Заголовок окна тоже должен быть информативным.
- Не забывайте об иконке. Она должна максимально отражать суть вопроса и быть легко узнаваемой.
Модальные окна и кнопка «Применить»
Та же проблема встречается и в окнах настроек. Вот правильное окно (о-па, опять MS):
Microsoft Word

Две кнопки: «ОК» и «Отмена». И «Отмена» справа. Так было есть и будет. И это правильно, потому что все к этому привыкли. Если пользователь чего-то там наменяет и вдруг передумает сохранять изменения, он неглядя жмакнет на правую нижнюю клавишу, потому что он привык там видеть отмену (и она в продуктах MS там и есть). Совсем другое дело Linux. Тут нет жестких правил и стандартов, тут каждый делает как хочет.
Rhytmbox

Интересно, не правда ли? Хотя предыдущее окно имеет нормальное расположение кнопок. Чем руководствовались разработчики — одному ежу известно. Оставим эти промахи на совести авторов, а для себя сделаем вывод: самая правая кнопка — отмена (если это свой не особый случай).
Microsoft Windows

Еще один интересный вариант — кнопка «Применить». Ах, какие у меня с ней воспоминания… Перед нажатием «ОК» на полном автоматизме нажимается «Применить». Не понятно зачем, но все же :-)
Пережиток прошлого, от которого Microsoft почему-то не хочет отказываться. Предназначена она для сохранения и применения изменений без закрытия диалогового окна. Изменили настроечку — будьте добры нажать «Применить». Сделано так было из-за того, что во времена Windows 95 компьютеры были слабенькие и применение настроек «на лету» вызывало некислые подзадумывания ПК. Сейчас же, во времена дохрена-ядерных машин и «офисных» лошадок с четырьмя гигами мозгов на борту, такая система просто излишня.
Ubuntu Linux

В Gnome, например, используется система применения настроек «на лету», т.е. тыкнул мышкой в картинку и она тут же стала обоями рабочего стола. Не надо нажимать «Применить»/«Сохранить». Есть только одна кнопка — «Закрыть». И больше ничего не нужно в некритичных диалогах.
Отсюда вывод: пользы от кнопки «Применить» мало, поэтому ее использование востребовано.
Вот, в принципе, и все на эту тему. Делайте, господа, хорошие, удобные интерфейсы. Да возрадуются ваши пользователи!
комментарии (224)
Если случайно нажата кнопка закрытия окна, как я понимаю. Кнопка «Далее» в установке — это нечто другое.
И при этом:
>Варианты ответа расположены в одним разработчикам понятном порядке. Почему именно «Нет», «Отмена», «Да»?
Потому что я правша и мышь у меня в большей части находится справа, кнопка сохранения справа на случай, если всё-таки я решил закрыть окно и у меня есть желание сохранить. Кстати по этой причине мне не совсем понятен перенос кнопок управления окном в новой убунте влево.
Насчёт «плавающего» расположение кнопок согласен — тут есть недоработки. Впрочем и виндовс подобным грешит. Не матерились ли вы пытаясь закрыть справку кликнув по нижнему пункту контекстного меню — там обычно находится «Закрыть», а у справки почему «О программе» или что-то подобное.
Насчёт:
>Задавать пользователю вопрос нужно максимально кратко, что бы не заставлять его полчаса думать над вопросом.
Сначала ответьте на такое: Кому задаётся вопрос — опытному пользователю, который на автомате кликнет на нужное или начинающему, которому нужно больше информации?
В целом юзабилити линукса мне нравится больше чем винды (тут я говорю о 2000 и XP, ибо с другими не работал) — после линукса многие вещи кажутся неудобными.
2. Положение мыши — не весомый аргумент для таких передвижений. Кнопки управления окном вообще отдельная тема. А видновой справкой почти не пользовался, она все-равно бестолковая :-)
3. Новичков обычно учат.
4. Полностью согласен, хоть есть и некоторые промахи, но куда же без них?
3) Не забывайте, что пока основные пользователи компьютеров это «офисный планктон». Вы когда-то пробовали научить пользователя вводить пароль типа 7Nhg, я один раз учил женщину его вводить 15-ть минут. Если у человека нет желания учиться и отсутствует любопытство, то обучение затеняться лет этак на 10-ть.
Автор статьи говорит всё правильно, а вот за тех, кто ему тут отвечает даже страшно. Правша, значит мышка справа? Да, но не курсор! Он в центре и у элементов управления. И это не зависит от того, правша ты или левша.
Это чертовски правильно. Терапия же «по Павлову», через болевой шок — это неправильно.
По поводу же положения элементов относительно ориентации юзера… Тут вообще идиотизм. Какая разница пользователю, правша он или левша, если курсор мыши передвинуть одинаково легко в любую область экрана?
Мне в этом плане нравится подход Apple. Кнопка подтверждения действия находится всегда в одном и том же месте диалога — в правом нижнем углу. Для меня как виндусятника это непривычно, но разумность такого подхода несомненна.
А в этом уже принципиальная разница между среднестатистическим пользователем Windows и среднестатистическим пользователем GNU/Linux.
Домохозяйки и офисный планктон, чтобы сохранить изменения зачастую закрывают программу, а иногда даже не знают другого способа сохранения. Пользователи GNU/Linux и продвинутые пользователи Windows сохраняют изменения как можно чаще через Ctrl+S и увидеть диалоговое окно, рассматриваемое здесь, у них есть шанс только в 2 случаях:
1) программа закрывается случайно (Отмена — желаемый вариант)
2) изменения в файле не нужны (Нет — желаемый вариант).
P.S. Это было небольшое напоминание о том, что при проектировании интерфейсов надо в-первую очередь думать о целевой аудитории, о персонажах в конце концов, о целях пользователя, стоящих за выполнением тех или иных действий. Почему статьи о том, как надо проектировать GUI пишут люди, которым лень изучить основные наработки IxDA?.. (вопрос риторический)
все приложения для gnome пишутся по одному «стандарту», для kde — по другому.
редко кто пользуется и тем, и тем одновременно. хотя я из их числа, но неудобств мне это не доставляет :)
techbase.kde.org/Projects/Usability/HIG
Вот как раз по этому я до сих пор пользюсь KDE3.5, где привычная для меня («виндовый») раскладка кнопок диалоговых окошек. Гномовский HIG слишком «overthought», предназначен для людей, которые привыкли запоминать визуальное расположение, а не содержание. Почему-то его разработчики считают, что если человек 100 раз вызывает диалог взрыва реактора и 100 раз там отвечает «да» (зря он, что ли, вызывает этот диалог), то в 101й вдруг может передумать, при этом не приобретёт за предыдущие 100 случаев привычку переходить на кнопку «да» с помощью клавиатуры. Если большинство — правши, то почему привычное у нас ассоциируется с левым, почему слева находятся тулбары и почему мы пишем слева направо.
> зачем тогда показывать этот диалог вообще?
Для того, что бы пользователь получил шанс подумать ещё 0.4 секунды перед неоткатываемым действием. Хотя вообще, я считаю, что модальность — зло (вызванное ленью разработки более продуманных интерфейсов/модели представления данных), а для отката хорошо бы иметь везде бесконечную последовательность Undo.
Игнатий де Лойола одобряет ход ваших мыслей.
Спасибо, ознакомился с биографией основателя ордена иезуитов. :)
У автора в цитате выше, мне увиделась явная опечатка, но фраза была построена так изящно, что за ней сразу замаячила фигура в орденской рясе.
Ну а Игнатий, он основатель ордена.
2. Положение мыши приводят также приводят как аргумент почему в линуксе (Gnome, если быть точнее) панель сверху.
3. Новички это не только те, кто только перешёл на новую ОС. Но и те, кто сам осваивает программу. Возможно нужно несколько режимов — для начинающего пользователя и опытного? Правда, возникают сомнения — навык будет выработан для уже существующего вида диалогового окна.
4. К логике работы буфера обмена я так и не привык, а в комплексе с неработающим копированием на нелатинских раскладках в ряде программа — это доставляет ряд неудобств :)
2. По той же причине, что в MacOS: взгляд чаще находится в верхней части экрана.
3. Чем короче диалог, тем больше шансов, что его прочитают. Если мне выдадут петицию на полэкрана, то сами понимаете. Тем более новый пользователь.
4. К этим программам привыкаешь переключаться на латиницу перед Ctrl+C. Или правишь исходники :-)
На моей Win XP смена темы оформления окон занимает от 2 до 6 секунд (только что проверил). И это на неслабой машине намного превосходящей минимальные требования. Если бы при выборе темы она автоматически «применялась», я бы жутко нервничал и плюнул бы на это раньше, чем нашёл бы приемлимую тему.
Эту к тому что автоматическое применение настроек/фишечек/чего-нибудь ещё — это безусловно хорошо, но при условии, что система обеспечивает мгновенный или почти мгновенный отклик.
Если нет — увы, ставьте кнопку «Применить» или галку «Превью» как сделали создатели Фотошопа:
Есть обоснование?
«Менты беспредельничают, чиновники воруют. Так было, есть и будет. И это правильно, потому что все к этому привыкли».
p.s. В macos, насколько я помню, все ровно наоборот, кнопка подтверждения находится всегда справа. И это тоже очень логично.
Здесь куча настроек, разнесенных по целому списку групп. Тут они уже не все на виду, поэтому если юзер отметил что-то в одной группе, потом перешел к другой, потом к третьей итд — к этому моменту он уже не помнит, что там наотмечал, что из этого нужно а что нет. В итоге юзер нажимает отмену и теряет все изменения, которые ему все-таки нужны.
Плюс при таком количестве групп сам процесс настройки (изначальной) превращается в длительное и вдумчивое занятие, и естественный порыв после преодоления очередной группы — сохранить промежуточные изменения и продолжить дальнейшие настройки. Кнопка «применить» идеально служит для этой цели.
Так же довольно часто хочется взглянуть на результат выбора того или иного варианта, и либо оставить его, либо выбрать другой, если не понравится. Опять же «применить».
Можно конечно использовать обходной путь: нажать «ОК», затем заново открыть окно настроек, вспомнить, где ты там остановился (опера слава богу открывает последний выбранный пункт), и продолжить проверять варианты. Но кто будет так делать, когда вместо этого достаточно один раз кликнуть «применить»?
Но к счастью у них не возникает никаких проблем когда они настраивают мак ос. Сразу понимают, что к чему и им это нравится.
p.s. Вы мне напоминаете апологетов «постоянного сохранения», которые утверждают что сама по себе операция «сохранить» устарела, как и иконка с дискеткой. Точно так же рубите с плеча.
А вот натыкавшись в настройки, разглядывая становящиеся доступными подварианты, возможность нажать кнопку «Отменить» ничего не применяя — это важно. Автоприменение в таком разе — ужасное зло. (Или нужно где-то иметь Undo для таких действий, что непонятно как оформить и куда сунуть, чтоб оно не путалось с отменой действий в документе.)
Соответственно, найдя настройку, похожую на то, что надо, но не имея автоприменения — хочется иметь возможность иногда её таки применить, не закрывая окошка настроек. Чтобы ежели чего донастроить придётся или поменять обратно — не приходилось опять идти открывать это окно настроек и искать в нём это самое место. Именно поэтому кнопка «Применить» становится очень желательна. И только если диалог очень близко доступен, и не имеет закоулков — то и кнопки «Ок» к отмене достаточно…
что куда правильнее на мой взгляд. и кнопка «сохранить изменения» требует нажатия в каждой группе
Думаю, разработчики Gmail в первую очередь сделали как удобнее им с точки зрения реализации (кнопка вызывает сохранение параметров текущего раздела), и только потом — пользователям.
Там нет кнопки применить, так как изменения сохраняются автоматически. Также, как и пункт меню «Настройки» находится в подменю «Редактировать».
"Хотите ли вы завершить работу?" — вопрошал диалог.
"Нет, но надо" — отвечал Штирлиц, нажимая кнопку "Нет".
Например, такое возможно при завершении работы компьютера и неактивном Word.
www.macvspc.ru/wp-content/uploads/2009/01/mac-os-x-dialog.png (окно сохранения в маке)
Most resources cite that between ten and eleven percent of Americans are left-handed (9.7% of boys and 12.5% of girls), but the range of estimates is as low as 7% and as high as 13%.
answers.yahoo.com/question/index?qid=20071125120809AAjdTcK
Каким это образом оно перевернуто?
Вы можете сказать, но пользователь же сам только что выбрал закрытие документа, поэтому он должен догадаться, что кнопка «Отмена» относится именно к закрытию. Очевидно, это и плохо, что пользователь должен о чём-то догадываться в таком простом диалоге. К тому же, связь между закрытием и появлением этого окна может быть и не такой очевидно — мало ли какие сообщения появляются в Ворде сами по себе? На окне нигде не сказано, что оно появилось именно в связи с закрытием.
Ненавижу, когда изменения применяются сразу же, без кнопки Apply (как в Mac OS).
Ненавижу, когда кнопка «с фокусом» — Don't Save.
Но действие по умолчания вызывается клавишей enter, — и это всегда Save.
А это Вы о каком софте? :-)
В окне настроек темы, при выборе, скажем, фона — фон применяется сразу, как только клинешь на него. Закрываешь окно — фон сбивается на предыдущий. Оказывается, нужно нажать кнопку «Сохранить изменения». Кретинизм.
При выборе теж же обоев из списка из нескольких десятков файлов, каждый раз заново открывать диалоговое окно, после того, как он применил очередные обои, было бы для него гораздо мнее удобно, чем просто нажимать кнопку «Применить».
МС использовала ползунок так как он хорошо работает с кнопкой применить. Если её убрать, то и ползунок надо переделывать.
В маке используется выпадающий список.
Мне удобней применение «на лету».
Но так как я не часто меняю разрешение монитора, от проблем с использованием кнопки не возникает.
Напротив же в окне выбора обои на рабочий стол кнопка «Применить» раздражает.
2. Диалог изменения стиля в гноме тоже далеко не идеален, стоит глянуть как сделано в КДЕ4. Там изменения применяются на лету, но они при этом не сохраняются и можно легко отменить все последние изменения. Это тоже важно, потому что малоли чего я там наменяю, а потом фиг найдешь как вернуть к первоначальному состоянию.
Есть простая аналогия с реальным миром — работа с документом за обыкновенным рабочим столом.
Было бы не круто, если бы каждый раз после письма рабочий стол не пускал меня и спрашивал хочу ли я сохранить то, что написал. А потом ещё ещё выдвигал ящики, предлагая мне туда их положить.
Я сам хочу решать, что я хочу делать. Захочу встану и уйду — письмо будет лежать у меня на столе. Хочу выкину его. Хочу положу в папочку. А захочу начну новое.
Почему-то все полагают, что задачи программы важнее моих собственных.
ЗЫ кнопки «ОК» ненавижу всем сердцем, как можно было придумать такую тупость (особенно, когда эта тупость дублирует крестик закрытия окна)…
Какая память предков? Я до сих пор пользуюсь бумагой и ручкой, и вроде даже я не один такой.
Интерфейс использует метафоры из реального мира — рабочий стол, корзина, документы и т.д., чтобы пользователю можно было быстрее адаптироваться к этому интерфейсу. Если вы больше времени проводите в реальном мире, то реальные вещи будут всегда «ближе».
Каким бы ни был удобным интерфейс, если он использует метафоры из непонятного мне опыта, то это будет сродни изучению чего-то совершенного нового и ни о каком удобстве уже речь идти не будет — будет одно раздражения от незнания что же нужно делать.
А у нас, куда не придешь, везде компы: в магазинах, в банках, в ЖЭКах, даже в милиции…
Дело в интерфейсе, элементы которого должны наследовать свойства реального мира.
К примеру, в чем причина успеха мультитача? В том, что работа с ним гораздо ближе к реальному миру (листание, перемещение), чем нажатия на виртуальные кнопки или кнопки мышки.
если пользователь всю жизнь читал бумажные книжки, а теперь решил перейти на электронные, тогда да, опыт листания использовать удобно. а если пользователь последние 10-15 лет читал все с экрана, то ему придется заново учиться листать несуществующие страницы! зачем это ему???
так же и с электронными документами. при переходе от бумаги к компу, аналогии с рабочим столом и корзиной удобны. но если человек уже давным давно не работает с бумагой, то эти аналогии — мертвый груз, мешающий работе.
посмотри, например, на гуглопочту. никакой аналогии с «материальными» предметами, а работать с ней чертовски удобно.
думаю, что именно так и надо подходит к интерфейсам — чтоб удобно было пользователю компутера, а не искать аналогии с чьим-то реальным миром
То, что Вы привели в пример, это скорее исключение из правил. Большинство пользователей программ типа Word, это средние пользователи. Не гики, которые 15 лет читают с экрана и не новички, которые никогда с экрана не читали, а средние пользователи, которые читали книги, работают с реальными предметами.
В том-то и дело, что учиться листать вам не надо, вы с детства листали книжки и документы. Это естественно.
Даже я программист, провожу до 16 часов за компьютером, но у меня есть рабочий стол и корзина, и я каждый день работаю с бумагой. Как это может быть мёртвым грузом сейчас?
Понятно, что пихать метафоры куда попало не нужно и не получиться — компьютер уже полон идиомами собственного производства, нужно их умело использовать.
в том же Word-е на что люди тратят свое время? на работу со стилями, шрифтами, картинками, таблицами — какие у этого всего аналоги в «реальном» мире? да не было этого всего в реальном мире, это все появилось только вместе с компом.
ЗЫ ну а о программистах с бумажками я думаю тоже, что и о пользователях экселя с калькуляторами ситизен — вы очень трудолюбивые, раз столько работы выполняете по два раза…
На рабочем столе у нас тоже нет иконок, но это не отменяет метафору рабочего стола в ОС.
Работа со шрифтами аналогии в реальном мире не имеет, и искать их не нужно. Тут нужно решать проблемы интерфейса и взаимодействия пользователя с ним.
Про бумагу я бы обиделся на Вас, но мне быстрее делать пометки и рисовать схемы ручкой, не отрываясь от контекста, как например, в программах, где чтобы подчеркнуть мне требуется не просто провести ручкой, а отрывать одну руку и нажимать на кнопку подчёркивания, где могу также быстро нарисовать фигуры разного размера и их связи, не прибегая к мышке. Планшет в этом смысле удобен, но это же метафора из реального мира, не так ли? :-)
для более статистического подхода предлагаю опросить людей, как часто они видят свой десктоп и как часто им пользуются.
а почему отрывать руки — это трудно, а вертеть головой туда-сюда нет — этого я все равно не понимаю :-)
мне всегда было удобнее видеть сразу и код, и схемы — как это организовать с бумажкой — я пока не придумал. вешать бумажку рядом с экраном — не удобно. распечатывать код — тугомотно и затратно. для себя нашел только два варианта: большой монитор или несколько небольших
Говорить, что метафора стола неудачна, можно тогда, когда столы исчезнут или люди перестанут их использовать. Как, например, дискетки на иконках с сохранением. Их же давно нет, уже есть поколения, которые их в глаза не видели, а Вы говорите стол неудачная метафора…
При работе над схемами в компьютере Вы тоже будете вертеть головой, только с одного экрана на другой.
У меня и дома и на работе по два монитора (24 + 19), но для быстрых заметок и рисования я использую бумагу.
Возможно, я анахронизм, но существующие устройства ввода не позволяют мне так же быстро делать заметки.
про дискетки — это действительно мало понятный анахронизм. операция сохранение на диск сама по себе анахронизм, в оригинальной PalmOS, например, она почти не использовалась, так как все данные и так в памяти устройства, куда их еще сохранять то? в мелкософт OneNote тоже кнопки сохранить нет (точнее она есть, но только для экспорта данных) — нет нужды в операции сохранить! я ввел данные, значит они должны храниться, зачем мне еще что-то давить? поэтому я и говорю — кнопка сохранить с дискеткой это неудачная метафора, как и рабочий стол.
эта метафора была хороша 15-20 лет назад, сейчас она катастрофически устарела.
а насчет быстрых заметок, все-таки рекомендую еще раз посмотреть что именно тормозит работу: устройства ввода или кривые метафоры используемых гуёв…
Также не понял, как может влиять метафоры в данном случае на ввод данных в компьютер.
Я просто уверен, что быстрее нарисую домик с заборчиком ручкой, чем Вы мышкой, хотя может у Вас получиться более точнее и красивее.
Предлагаю нашу дискуссию закончить, так как она бессмысленно увеличивает энтропию, а про метафоры уже говорили до нас нильсоны, раскины и другие головачи, причем с большими знаниями об предмете.
информация ценна когда она используется, а не когда производится. если рисуется чтобы тут же выбросить — то стоит ли вообще рисовать? а если картинку нужна для того, чтобы ее потом использовать, то она должна быть удобна в использовании, а не только в рисовании (поэтому надо оценивать не только скорость рисования, но и все затраты на дальнейшее использование этих рисунков)
а авторитеты — это хорошо! и чем древнее авторитет, тем лучше! тем авторитет адекватнее текущей действительности… Вы правда думаете нечто подобное?
Знаменитая книга Раскина вышла в 2000 году, сам он умер в 2005 году. Остальные упомянутые мной, слава богу, ещё живы. Слово «метафора» вообще восходит к Аристотелю.
«Авторитеты» решали задачи когнитивности применительно к интерфейсам. Способности людей к познанию не сильно меняются и основаны на психических процессах.
Если Вы не читали, но осуждаете авторов за несоответствие действительности, то всё же рекомендую их почитать.
Если читали и осуждаете, возможно, Вам стоить написать свои труды в этой области, я с удовольствием почитаю.
То есть «попытки построить аналогии между цифровыми и аналоговыми средствами обработки».
Выше была дискуссия об использовании опыта пользователя, так вот метафоры уже являются частью этого опыта (как реальные, так и виртуальные, которые уже были созданы для электронных устройств).
Использование таких метафор облегчит работу с вашим интерфейсом.
Никаких других альтернатив я не вижу, и пока на них мне никто не указал.
Хотя если вы на 100% уверены, что ничего не случится, то конечно тогда просто лучше сохранять автоматом каждую минуту и не париться. В этом плане гуглдокс рулит.
По мне правильный подход — сохранять всё, а потом что не надо всегда можно удалить.
Может работать с текстовым документом — объемы не слишком большие (да чего уж там, тот же MS Word умеет работать с правками, даже подсвечивает их), но с другими видами документов (звук, изображения, видео) — превращается в ад. И дело даже не в аппаратных проблемах и недостаточном развитии техники. Та же история изменений линейна. Не CVS же для каждого пакета городить.
p.s. Пока что не нашел внятного обоснования необходимости отказа от сохранения. В основном — «не будем сохранять, потому что это круто и компы сейчас быстрые». Но при этом я считаю, что если бы можно было закрыть программу, а потом открыть ее в том же состоянии что и было до закрытия было бы круто. Правда нужно решить множество сопутствующих проблем.
Очевидно, Apple как раз из таких, которые тормозят развитие удобных юзабельных интерфейсов, — Apple Human Interface Guidelines.
Ваш пример про «перезагрузку» кабинета больше смахивает на попытку копирования, а не создания сбалансированной метафоры интерфейса.
Очевидно, что слова метафора происходит от греческого «переносное значение», что уже не подразумевает бездумное копирование, а создание средства выражения кратной части процесса или предмета.
Вот примеры метафор, очевидных и нет.
Также можно вспомнить много контролов — кнопки, которые копируют внешний вид и состояния с реальных кнопок, чекбоксы, копирующие галочки в опросах, ползунки, копирующие различные микшеры, вкладки, как способ организации.
Ярчайший пример использования метафор — это иконки. В случае удачно подобранной метафоры можно значительно увеличить продуктивность пользователя.
Ещё можно вспомнить мышь — перемещение реального предмета приводит к аналогичному перемещению курсора. Причем, обучаемость при использовании мыши велика — почти все сразу понимают, что и как надо делать.
В общем, метафоры могут быть не только на предметы, но и на процессы (помещение документа в корзину).
Куча же холиваров была, все копья сломаны, все вопросы разжеваны, все точки зрения отстояны.
Кнопка нужна как осознанное действие для сохранения, хотя если такое сохранение будет автоматическим, то она мне не будет нужна.
Прощу прощения, если я заставил Вас вернуться к такой разжеванной теме, но похоже холивар решился в пользу кнопки сохранения и в пользу диалогов больших и разных, так как позитивных подвижек я не заметил.
Ещё раз, прощу прощения, за то, что высказал своё мнение в попытке найти достойные ответы.
Если бы я был Темным Властелином, в моей ОС была бы реализована эта функция и народ бы меня ненавидел.
Сохранить черновик письма?
Да, Нет, Отмена.
«Сохранить черновик», «Не сохранять черновик», «Вернуться к редактированию», «Отослать как есть».
Discard your message?
Ok — Cancel
— Have you ever been in Haiti?
— Ok.
Странно звучит.
В английском просто нет проблем с вопросами типа «Не сохранять? Да-Нет». В русском можно подумать как «Да, не сохранять» или «Нет, не сохранять» или «Нет, сохранять».
В английской грамматике Да означает подтверждение вопроса, Нет — отрицание. То есть «Да, не сохранять», «Нет, сохранять».
На у кнопки Ok-Cancel они из стандартного javascript confirm идут. Их не поменяешь.
По этой же причине диалог сохранения в Mac OS хороший.
А в Linux — плохой. По той же самой причине.
Варианты ответа расположены в единственно правильном и удобном порядке.»
Неправильно. Вот как правильно располагать кнопки: «Не сохранять», «Отменить», «Сохранить»
В макоси так и это правильно!
Ещё есть мнение, что это облегчает навигацию через Tab.
По-моему, это исторически сложившаяся ситуация, которую исправить Microsoft уже не в силах.
С чего это вдруг?
Лично я в таких диалогах нажимаю «Нет» в 90% случаев и «Отмена» в 10%.
А для сохранения изменений есть более подходящие способы, чем закрытие программы, не вижу смысла создавать себе сложности, смешивая две эти абсолютно несвязанные функции.
Представь, что в текстовом редакторе открыто 20 файлов, в 15 из которых надо сохранить изменения, а в 3 — нет. Сколько диалоговых окон с вопросами ты хочешь увидеть в таком случае при закрытии редактора? 20? 18? Я лично предпочту одно, в котором смело выберу «Нет, не сохранять». Так как сохранение будет осуществлено абсолютно независимо от закрытия редактора.
Но разница в расположении не играет большой роли. В маке правильно сделали, что написали действия на кнопках, а не оставили это всё додумывать пользователю.
Не знаю, понятно ли сказал, но всё субъективно, а говорить «правильно» на то к чему привык — неправильно.
Выбранная картинка при выборе ставится на рабочий стол, а при нажатии «отмена» возвращается старая :)
«Да», «Нет», «Отмена».
Кнопка «О! Годится!» — как кнопка «ОК» (в серьезном варианте так бы и было). Применит настройки и закроет диалог.
«Вернуть всё обратно» — мы выбираем картинку, и можем передумать, но не закрывать диалог, так как хотя бы цвет окошек поменяем всё равно. Фактически вернёт нас в исходный вид диалога.
Отмена — вернуть всё обратно и закрыть диалог.
Я был бы рад, если бы и в гноме и Windows 7 были такие (или более серьёзные) кнопки.
>>непонимание разработчиками «неписанного кодекса дизайна»
«Неписаный» кодекс дизайна давно написан почти для каждой ОС/DE и называется Human Interface Guidelines.
en.wikipedia.org/wiki/Human_interface_guidelines
>>Варианты ответа расположены в единственно правильном и удобном порядке.
Для стран, где пишут слева направо, единственно правильный порядок: справа — движение вперед, слева — движение назад. Поэтому подтверждение должно быть справа, отказ/возврат — слева. Посмотрите как расположены кнопки next/prev в инсталляторах и задумайтесь, почему они расположены именно так.
Также, как уже отметили, из этого диалога непонятно, чем отличаются «Нет» и «Отмена». Не сохранять изменения и отменить изменения?
>>Выделен неправильный вариант ответа. (GIMP)
Выделен как раз правильный вариант ответа. Кнопки, приводящие к деструктивным действиям НЕ ДОЛЖНЫ быть выделены по умолчанию. Потому что юзер может по привычке не читая нажать Enter и потерять информацию. Сохранение и выход без сохранения — это именно деструктивные действия, первое уничтожает предыдущую копию, второе — уничтожает текущую.
>>Совсем другое дело Linux. Тут нет жестких правил и стандартов, тут каждый делает как хочет.
Как я уже сказал, в любой ОС есть жесткие правила и стандарты создания интерфейсов. И уж где ими пренебрегают практически все, включая разработчиков ОС, так это в винде.
Артемий?..
Я даже скажу, что юзер, жмущий кнопки не читая, ДОЛЖЕН потерять информацию. Ругаться уже хочется, думайте, блин, о НОРМАЛЬНЫХ пользователях, которые читают, понимают что хотят, понимают что делают. Фокус должен быть настроен именно на их нормальные действия. Если я осознанно сохраняю документ, почему перед тем, как нажать enter я должен переводить фокус? Потому, что какай-то, млять, Вася Пупкин не читает вопросы? А не пойти бы ему вслед за разработчиком, так о нём пекущемся?
Но при разработке интерфейса думают не о «НОРМАЛЬНЫХ» пользователях, а о большинстве. И поэтому рационально ставить фокус на отмене. Когда ваше предприятие не сможет заключить контракт, потому что Вася Пупкин случайно нажал Enter и убил презентацию — вы вряд ли будете считать что это приемлемая цена за одного поумневшего юзера.
Нормальные пользователи для сохранения используют соответствующую функцию интерфейса или Ctrl+S, поэтому для них наиболее популярным ответом на это диалоговое окно будет — Нет, ну и в редких случаях — Отмена, но никогда — Да.
Так что в данном случае лучшим вариантом для нормальных пользователей был бы диалог: «Вы хотите закрыть программу несмотря на несохранённые изменения?» Нет, Да(по дефолту).
Вместо этого в обоих рассмотренных случаях программы считают, что пользователь туповат и не в курсе есть у него несохранённые изменения или нет.
ты реально для сохранения любого изменения закрываешь программу?
Однако, это не даёт повода считать что это нормально и что все так делают :-)
> Это удобно, как минимум.
Кому как, см. выше пример про 18 вопросов при закрытии, порождённых твоим подходом, вместо одного. Это возможно может быть удобно в частном случае, но в общем случае это сплошной гемморой. Даже в случае с вордом гораздо удобнее нажать Ctrl+S и Alt+F4, чем тянутся сначала к кнопочке закрытия окна, потом к диалогу и т.д., вся эта муть — пустая трата времени, если надо просто сохранить изменения и закрыть программу.
Автосохранение — в большинстве случаев олицетворяет деструктивное зло, да и придумано оно для криворуких пользователей, не умеющих сохранять нужные изменения естественным путём, а не через
задницузакрытие программы.А защиту информации от случайных сбоев олицетворяет своевременное ручное(осознанное) сохранение изменений и периодическая их заливка в удалённый распределённый репозиторий.
А вы говорите про ситуацию, когда пользователь случайно открыл документ, случайно его изменил, случайно закрыл и случайно сохранил. Вам не кажется, что это бред?
В аду пусть горят разработчики со столь заигравшейся фантазией, честно. Не нужно жертвовать удобством работы ради предотвращения невероятных случайностей, для этого есть другие механизмы: бекап и автосейв, например.
Как-то клал деньги на телефон в автомате и по привычке нажимал в правый нижний угол (кнопка «далее»). Но, когда дошло до вопроса о распечатке чека, кнопки «назад» и «далее» неожиданно поменялись местами, а я все так же по привычке нажал в правый нижний угол =) Чек в итоге не получил, но деньги, слава Богу, пришли =)
А что касается надписи, то слово «изображение» помогает написать вопрос по-русски. Вордовский вопрос «Сохранить изменения в Без имени?» порой вводит неопытных пользователей в ступор (да, я наблюдал такую реакцию у своих родителей). Не забывайте, что этим диалогом будут пользоваться и полные новички, поэтому чем понятнее, тем лучше. Ведь сохранность данных — святое.
Ну да, и приводить в качестве примера окно настройки какого-то (второсортного) плагина в Rhythmbox это уж совсем нечестно. В Windows тоже можно найти тысячи примеров с плохими интерфейсами.
За топик однозначно минус. Пытается претендовать на лекцию и при этом содержит какие-то совсем неадекватные сравнения и утверждения.
Изначально «Сохранить» дизеблена. При изменении настроек энейблится.
Плюс, если есть древо категорий настроек, не вредно подсвечивать (жирным шрифтом, например) те категории, где есть изменения.
Да и сами изменения тоже.
А насчёт «Применить» — она нужна, но далеко не везде.
Кроме того, наличие кнопок и «Применить» и «Отменить» предполагает возможность отката изменений после «применить».
Если это не так — грош цена такому «Применить».
Порядок кнопок мне кажется спорным, но тут уж дело в привычке пользователей.
Данные файла блабла.txt не сохранены.
[Не сохранять и выйти] [Вернуться к редактированию] [ Сохранить и выйти]
Bсё ясно и очевидно.
А вот в винде случайно закрыв программу я интуитивно хочу нажать Нет (типа не закрывайся) а получаю то, что файл не сохраняется.
Благо теперь я пересел на Мак, где ситуация с юзабилити куда приятнее :)
Идеальная система вообще не выводит диалоги.
Поясняю: все эти диалоги изначально нужны для предотвращения необратимых изменений состояния системы (в том числе потери данных).
При сегодняшних ресурсах программы должны уметь возвращаться к любому своему предыдущему состоянию на некоторый разумный промежуток времени.
Если я поменял настройку, я должен иметь возможность вернуться к предыдущему состоянию или к состоянию «как было вчера». Если я редактировал документ и закрыл программу, то при её открытии я должен продолжить редактирование, имея на экране ровно те же элементы интерфейса, и имея в своём распоряжении всю историю изменений (доступную пошаговую «отмену»).
Мне непонятно, почему многие пргограммы после нажатия «сохранить» теряют «undo». И непонятно, почему у меня нет «undo» после повторного открытия файла. Ресурсы для этого есть.
Поэтому правильным способом вывода диалога является его отсутствие, при одновременной возможности отменить действие.
Очень часто мне не хватает в ОС возможности нажать Ctrl+Z и отменить запуск какой-то программы или системной процедуры (выключение, например).
1. Запускаем программу для форматирования дисков. Если это было сделано случайно, закрываем её.
2. Выбираем диск(и) для форматирования, настраиваем прочие опции и ищем кнопку «Форматировать» — а она «выключена» и недоступна для нажатия. Зато рядом есть чекбокс с подпсиью «Да, я проверил все настройки и понимаю, что потеряю все данные на диске ».
3. После простановки галочки в чекбоксе, кнопка «Форматировать» становится доступной для нажатия. По её нажатию производятся запланированные действия.
Опционально под всеми настройками можно вывести «план действий», например:
«Запланированные действия:
1) Отформатировать логический диск D (расположены на носителе SUMSUNG ABC SATA 2 bla-bla) в систме NTFS и установить для него метку `Documents`.
2) Объединить логические диски E и F (расположены на носителе SUMSUNG DEF SATA 3 bla-bla) в систме FAT32, присвоить новому диску букву E и установить для него метку `Trash`.
[ ] Да, я согласен с планом действий и понимаю, что все данные на дисках D, E, F будут потеряны.»
В большинстве других случаев разработчики неоправданно прибегают к использованию капчи, забывая о «презумпции человечности» пользователя.
Либо кто-то из разработчиков «Убунты или Gnome» увидит эту или схожую дискуссию и осознает мир по-новому, либо кто-то более мелкий выстрелит на рынок букетом инновационных пользовательских интерфейсов, в сочетании с другими благоприятными факторами добъётся успеха, и тогда эта тенденция будет замечена и все будут говорить «ну, это же очевидно».
Расположение кнопок ни на что не вляет, скрины с мака это доказывают. Главное правило в диалогах — чтобы все диалоги в системе работали одинаково, тогда и проблем не будет. Замечание про бардак в линуксе верно лишь отчасти. Например, в Ubuntu ребята из Canonical стараются всё привести к одному знаменателю, так что к ним претензий мало.
Стандарты и гайды есть под все ОСи/DE, другое дело что не все программисты их соблюдают. Даже внутри самой Microsoft не все софтины вылизаны и приведены к одному виду (их там, правда, таких мало). Так что претензии тут не к операционкам, а к программистам под эти ОСи. Сели писать под Ubuntu? Сделайте интерфейс родным! А если приложение кроссплатформенное, то под винду диалоги скомпиляйте отдельно с другой «мордой». Вот авторы Firefox это давно поняли, за что им большое спасибо!
Диалог значительно удобнее того что в топике. Во первых использованы иконки, чтобы понять действие, во вторых расположение елементов логичнее и удобнее.
Возможно они консервативнее, либо же потому что иконка со стрелочкой и диском занята менеджером закачек KGet.
themengzor@themengzor-laptop:~$ apt-cache policy gimp
gimp:
Установлен: 2.7.3-2010022601~ll
Кандидат: 2.7.3-2010022601~ll
Таблица версий:
*** 2.7.3-2010022601~ll 0
500 ppa.launchpad.net/matthaeus123/mrw-gimp-svn/ubuntu/ lucid/main Packages
100 /var/lib/dpkg/status
2.6.8-2ubuntu1 0
500 ua.archive.ubuntu.com/ubuntu/ lucid/main Packages
themengzor@themengzor-laptop:~$
Версия 2.7 — это dev-release в котором и не такую ересь можно наблюдать. Мне пока старый диалог нравится больше.
Плюс в убунту еще часто патчат пакеты, чтоб те подходили под их представление о системе.
В остальных случаях, как тут уже написали, — это кнопка предварительного просмотра. Где это в тему, это удобно.
Меня лично больше волнует (бесит) кнопка Отмена, т.к. она всегда дублируется кнопкой «Закрыть» окна. Например, в самом первом показанном «хорошем» диалоге не 3, а 4 кнопки, две из которых делают одно и то же (что, кстати, совершенно не очевидно). К счастью, в последних версиях Windows, оконные кнопки делают большими, так что можно уже отказываться от порочной Отмены.
Уважаемый автор, не кажется ли вам, что только в Windows кнопки стоят в «правильном» по вашему мнению порядке? Разработчикам остальных ОС всё никак откровение не посещает?
P.S.
Да, я в курсе, что вы уже год «сидите» под Ubutnu, но вы первый из всех кого я знаю, кто за год работе в Ubuntu сказал такую ахинею.
Ох как я намучился с этим окном:
Кнопка «Отмена» первая, и она больше по размерам, чем «Вход», поэтому инстинктивно нажимаешь именно её, так что по этому вопросу автор в прав.
Но моя первая операционка (и в которой я провёл гораздо больше времени) — это Windows, поэтому мне удобней именно так, как говорит автор. Идеального юзабилити не добьёшься, че, всегда найдутся недовольные.
*А вот «Применить» в некоторых местах очень удобно, но об этом выше сказали*