Хороший дизайн является более важным, чем вы думаете.
Рекс Хефтмэн
Когда сложность некоторого продукта или части программного обеспечения, или компьютерной системы превышает наши в ней потребности и создает трудности, это вполне оправданно вызывает в нас раздражение. Даже если нам требуется поработать с каким-то простым текстом, мы вынуждены разбираться в сотнях или, как в случае с Microsoft Office, даже тысячах команд и методов, которые нам не нужны. С другой стороны, если бы мы могли пользоваться этими командами по мере возникновения в них необходимости, это сняло бы ощущение избыточности и огромного когнитивного груза, даже если бы вся система стала от этого столь же сложной, каким являлось до этого само приложение.
Мечта о том, чтобы продукты были изначально действительно (а не внешне) просты и в то же время гибки, может быть достигнута на основе подхода, в котором система не должна быть сложнее, чем ваши потребности в данный момент, и при котором возможности системы можно наращивать постепенно. Чтобы понять, как это сделать, вспомним, что в разделе 5.1 было сказано о том, что почти все действия, выполняемые с помощью компьютера, включают содержание, которое вы вводите или получаете, и набор операций, которые вы применяете к этому содержанию. Также вспомним, что интерфейс для любой такой операции состоит из двух частей: выборе содержания и вызова операции. Например, в игре требуется убить монстра, или, выражаясь более прозаическим языком, выполнить операцию по изменению изображения монстра на изображение взрыва. Содержание выбирается с помощью курсора (курсор подводится к монстру), а операция вызывается с помощью клавиши на ГУВ. Между прочим, это довольно хороший интерфейс — быстрый и результативный.
Вызов команды для применения к выборке может дать три возможности: