Человеческий фактор в программировании - Ларри Константин
- Дата:19.08.2024
- Категория: Бизнес / Управление, подбор персонала
- Название: Человеческий фактор в программировании
- Автор: Ларри Константин
- Просмотров:0
- Комментариев:0
Шрифт:
Интервал:
Закладка:
Вопрос заключается в том, что считать «достаточно хорошим» в отношении таких широко применяемых средств, как графические пользовательские интерфейсы. Самый важный вид согласованности — это согласованность способов мышления и действий людей, когда программное обеспечение не вынуждает их выбирать те или иные методы. Кора человеческого мозга обладает поразительной гибкостью. Люди способны учиться. Они могут подстраиваться под самые сложные интерфейсы, однако у всего этого есть своя цена.
Большая часть знаний и действий людей не связана с компьютерами (как это ни печально для программистов, но это суровая реальность!). Хотя некоторые механизмы действительно «зашиты» в человеческий мозг, большая часть действий, которые люди считают интуитивными, на самом деле являются обусловленными. Сегодня психологи определяют интуицию в терминах комплексных ассоциаций и процессов обработки информации, которые настолько известны мозгу, что перестали быть полностью осознаваемыми.
Противореча разумуКогда вы вынуждаете пользователей взаимодействовать с системой способами, которые противоречат соглашениям, запрограммированным на практике или полученным в результате эволюции, вы увеличиваете недовольство и усталость, а также создаете дополнительный и постоянный источник ошибок. Даже небольшое увеличение вероятности ошибки из-за пользовательского интерфейса может быть значительным. Представьте, к чему может привести даже малейшее увеличение частоты ошибок в процессе ввода информации в современные гигабайтные базы данных. Или представьте последствия неполадок в интерфейсах тех инструментов, с помощью которых проектируется и создается само компьютерное программное обеспечение.
К сожалению, большинство современных графических пользовательских инструментов просто-напросто не являются хорошими. Они противоречивы, чрезмерно сложны и изобилуют условностями, которые объективно и субъективно неверны. Публичное признание Microsoft в том, что Windows не представляет собой идеальную платформу для управления домашними устройствами и другими потребительскими продуктами, — это довольно сдержанное высказывание. Проблема не в тонкостях стиля, а в принципиальных изъянах базовых механизмов.
Приведем только один пример. Возьмем полосы прокрутки, которые применяются как метафорические механизмы для управления перемещением рабочей области относительно меньшего по размерам «окна», отображающего только часть поверхности. Полосы прокрутки для экранной навигации выполняют ту же роль, что и рычаги управления для автомобильной навигации (Constantine, 1994 [25]). Они замедляют и ограничивают работу пользователя, вводят его в заблуждение, а также вызывают лишние движения, увеличение ошибок и нарушение нормального хода мыслительных процессов. Они вынуждают пользователя выполнять такие движения, которые абсолютно противоречат работе мозга. Для перемещения влево или вправо пользователю приходится сначала переместиться вниз, а для перемещения вниз или вверх нужно сначала переместиться вправо.
Для того чтобы понять, насколько проблематичным может быть простой, но «противоинтуитивный» интерфейс, проведите небольшой эксперимент. Разверните мышь на четверть оборота против часовой стрелки и попробуйте с ее помощью перемещать курсор на экране. Такая пространственная манипуляция кажется простой, но приспособиться к ней почти невозможно.
За пределами мира компьютеров существуют системы и устройства, которые предназначены для решения аналогичных задач навигации с помощью панорамирования, прокрутки и масштабирования. С точки зрения графических пользовательских интерфейсов интересно рассмотреть два из них: аппараты чтения микрофиш и видеокамеры. Среди десятков механизмов для управления экранной навигацией (в том числе и тех, которые были разработаны автором этой книги) есть несколько явно и существенно лучших, чем полосы прокрутки (Constantine, 1994 [25]). Если вам не кажется, что это важно в реальной работе, просто подумайте, сколько раз в день вы или ваши потребители прокручивают документы, диаграммы и изображения на мониторах.
Введение стандартов для графических пользовательских интерфейсов может стать плохим решением, хотя идея временами кажется хорошей. Вопрос только в том, хотите ли вы всегда попадать в заторы, управляя своим компьютером с помощью рычагов.
Из журнала Computer Language Magazine, том 9, № 11, ноябрь 1992 г.
35
Сложность и прогрессирующий функционизм
Я ненавижу переезжать. Я ненавижу заниматься апгрейдом программного обеспечения. Я ненавижу пересаживаться на новую машину. В принципе, переход к другой платформе или версии прост и эффективен. На практике это приводит мою и без того слегка неупорядоченную повседневную жизнь в полный и непроглядный хаос. Но больше всего я ненавижу изучать новый текстовый редактор.
Мне, как поставщику новых идей, больше всего нужны два программных продукта: графический пакет и текстовый редактор. Эти инструменты — мои постоянные попутчики. Я хочу, чтобы мне было удобно с ними работать и чтобы они хорошо совмещались друг с другом. Они определяют границы того, что я могу сделать в плане самовыражения с помощью слов и графики; они устанавливают потолок моей продуктивности. Они помогают мне одним движением доставать до дальних ящиков или же ставят подножку в простых задачах. Подобно выбору нижнего белья или дезодоранта, мои предпочтения одних инструментов другим являются глубоко личными, категоричными и иррациональными.
Изначально я мигрировал на Windows потому, что графический пакет, который был мне нужен (или мне просто хотелось им пользоваться?), работал под Windows. Миграция ассоциируется с устойчивым прогрессом, но в моем случаем это напоминало дефенестрацию[Дефенестрация (от лат. fenestra — «окно») — выкидывание человека из окна. — Примеч. перев.
]. Решившись на такой шаг, я столкнулся с раздражающей необходимостью переключаться между текстовым редактором и пакетом инструментов, работающих под DOS, и графическим Windows-инструментом. Как и рецидивирующий артрит, это не смертельно, но причиняет постоянную боль. Для более гладкого взаимодействия с коллегами, многие из которых переходили на один и тот же текстовый редактор в Windows/Macintosh, я клюнул на одно из предложений провести апгрейд. Чтобы ощутить смысл термина «апгрейд», представьте себе подъем дороги, которая тянется… вертикально вверх![Автор обыгрывает слово «upgrade» (англ.); grade — здесь: уклон, подъем; up — вверх. —]
Нельзя сказать, что этот текстовый редактор был недружелюбен к пользователю. В нем больше красивых кнопок, чем пуговиц у профессиональной портнихи, и больше файлов контекстно-зависимой справки, чем у вашего научного руководителя в институте. В нем не сложно выполнять простые повседневные операции. Наверное, с его помощью можно сделать все, что мне когда-нибудь может понадобиться. Однако можно потратить месяц на поиск всех этих удобных функций, особенно тех сокровищ, которые определяют разницу между исполнением работы в срок и не в срок.
- Интерфейс: новые направления в проектировании компьютерных систем - Джефф Раскин - Техническая литература
- Мэйсон - John Hall - Боевая фантастика / Боевик / Научная Фантастика
- Право социального обеспечения - Владимир Галаганов - Детская образовательная литература
- Компьютерра PDA N143 (29.10.2011-04.11.2011) - Компьютерра - Прочая околокомпьтерная литература
- Быть полезным: Семь инструментов для жизни - Арнольд Шварценеггер - Прочая старинная литература