Как отслеживать дни рождения
Одна из обязанностей секретаря или помощника руководителя – напоминать шефу о том, что нужно поздравить кого-то из сотрудников, клиентов или партнеров компании с днем рождения или профессиональным праздником. Как сделать это с минимальными затратами ресурсов и не забыть ни о ком, расскажем в статье.
«ВНЕШНИЕ» ИМЕНИННИКИ
Количество полезных контактов крупной организации может исчисляться сотнями. Понятно, что в этом случае почти каждый день найдется кого поздравить. Ничего не поделаешь, это важная часть работы по поддержанию деловых связей. Руководитель сам решает, кого и как поздравить, задача же помощника – вовремя напомнить о приближающейся дате. Если мы говорим о помощнике генерального директора, то именно он будет отслеживать поздравления первых лиц. Секретарь руководителя среднего звена ведет свой список именинников – впрочем, по тем же правилам.
Формируем «внешнюю» базу данных
Для работы с «внешними» днями рождения необходимо сформировать специальную базу данных. Удобнее всего построить ее в виде таблицы Excel (см. Пример 1). При желании можно добавлять в эту базу данных и профессиональные праздники, чтобы вся информация, касающаяся поздравлений, содержалась в одном файле. Обратите внимание: список именинников в таблице построен по хронологическому принципу – по датам их рождения (по месяцам и по числам месяца).
Структура таблицы позволяет также быстро найти именинника по фамилии. Если нужно узнать, когда день рождения, например, у Гулецкого Павла Владимировича, можно воспользоваться простым поиском (сочетание клавиш Ctrl+F), и программа тут же выдаст результат (рис. 1). Как вариант, можно применить функцию Сортировка и фильтр, которая позволяет выстроить фамилии по алфавиту (рис. 2). Это актуально, когда фамилию человека никто точно не помнит, зато все уверены, что она начинается с буквы «В».
Обновляем «внешнюю» базу данных
Как и любая база данных, наша таблица именинников должна регулярно обновляться. Чем больше в ней строк, тем больше вероятность, что в некоторых из них содержится устаревшая или неточная информация. Конечно, дата рождения человека не изменится, зато сам он за то время, которое прошло с момента последнего поздравления, мог сменить должность или место работы, уйти на пенсию… За всем этим нужно успевать следить, чтобы не возникло неловких ситуаций. Как это делать?
Во-первых, нужно потратить несколько минут на то, чтобы накануне каждого первого числа распечатать базу данных на ближайший месяц и показать директору. Он определенно знает больше, чем секретарь, о кадровых перестановках в своей отрасли. Кроме того, здесь может выясниться, что некоторые фамилии вообще следует убрать из списка: по разным причинам компания больше этих людей не поздравляет.
Во-вторых, секретарю необходимо ежегодно проверять актуальность базы данных, обзванивая помощников или секретарей всех внесенных в базу персон и уточняя, занимают ли они те же должности, а если нет, то где теперь их можно найти. После знаковых событий в регионе, например выборов, такая сверка проводится вне очереди. В завершение проверки нужно отметить тех людей, которые в предстоящем году празднуют юбилеи.
В-третьих, базу нужно регулярно пополнять. Например, если в организации есть традиция поздравлять с днем рождения всех своих клиентов, каждый раз при заключении договора все данные генерального директора нового контрагента должны быть переданы секретарю. Куратор договора через своего коллегу в компании-клиенте получит эту информацию без труда. Другими источниками информации могут быть социальные сети, помощники первых лиц, а если речь идет о чиновниках и государственных деятелях, то региональная пресса.
Кто и как поздравляет
Как именно поздравлять первых лиц, решает генеральный директор. Обычно все именинники делятся на категории: самым важным шеф наносит визит лично, к кому-то отправляет заместителя, кому-то звонит.
Материал публикуется частично. Полностью его можно прочитать в журнале «Секретарь-референт» № 10, 2016.
Сортировка дней рождений
14408 04.11.2015 Скачать пример
Во многих компаниях принято отмечать дни рождения сотрудников или поздравлять с ДР клиентов, предлагая скидки именинникам. И тут же возникает проблема: если в компании ощутимо большое количество сотрудников/клиентов, то сортировка их списка по дате рождения дает не совсем желательный результат:
Поскольку Microsoft Excel воспринимает любую дату как числовой код (количество дней с начала века до текущей даты), то сортировка идет, на самом деле, по этому коду. Таким образом мы получаем на выходе список по порядку «старые-молодые», но из него совсем не видно у кого в каком месяце день рождения.
Способ 1. Функция ТЕКСТ и дополнительный столбец
Для решения задачи нам потребуется еще один вспомогательный столбец с функцией ТЕКСТ (TEXT), которая умеет представлять числа и даты в заданном формате:
В нашем случае формат «ММ ДД» означает, что нужно отобразить из всей даты только двузначные номер месяца и день (без года).
Теперь простая сортировка по вспомогательному столбцу (вкладка Данные — Сортировка) как раз и даст нужный результат:
Вуаля!
Для полноты ощущений можно добавить к отсортированному списку еще автоматическое отчеркивание месяцев друг от друга горизонтальной линией. Для этого выделите весь список (кроме шапки) и выберите на вкладке Главная команду Условное форматирование — Создать правило (Home — Conditional formatting — Create Rule). В открывшемся окне выберите нижний тип правила Использовать формулу для определения форматируемых ячеек и введите следующую формулу:
Эта формула проверяет номер месяца для каждой строки, и если он отличается от номера месяца в следующей строке, то срабатывает условное форматирование. Нажмите кнопку Формат и включите нижнюю границу ячейки на вкладке Границы (Borders). Также не забудьте убрать лишние знаки доллара в формуле, т. к. нам нужно закрепить в ней только столбцы.
После нажатия на ОК к нашей таблице добавятся симпатичные разделительные линии по месяцам:
Способ 2. Сводная таблица с группировкой
Этот способ вместо дополнительных столбцов и функций задействует супермощный инструмент Excel — сводные таблицы. Выделите ваш список и на вкладке Вставка (Insert) нажмите кнопку Сводная таблица (Pivot Table), а затем ОК в появившемся окне. Перетащите поле с датой в область строк — Excel выведет на листе список всех дат в первом столбце:
Щелкните правой кнопкой мыши по любой дате и выберите команду Группировать (Group). В следующем окне убедитесь, что выбран шаг группировки Месяцы и нажмите ОК. Получим список всех месяцев, которые есть в исходной таблице:
Теперь, чтобы увидеть у кого именно из сотрудников день рождения приходятся на конкретный месяц, перетащите поле с именем сотрудника и бросьте его под поле с датой в область строк:
Задача решена, и не нужно возиться с формулами. Единственный минус этого варианта в том, что Excel не умеет группировать столбцы с пустыми ячейками, т.е. вы должны иметь полностью заполненный датами столбец в исходной таблице.
Ну, вот — можно идти собирать деньги с коллег на очередной тортик или закупать подарки для любимых клиентов 🙂
Ссылки по теме
- Хитрости сортировки
- Как Excel на самом деле работает с датами
- Как сделать всплывающий календарь в ячейке листа Excel
дизайнов, тем, шаблонов и графических элементов ко дню рождения на Dribbble
Посмотреть торт ко дню рождения
Торт ко дню рождения
Посмотреть
Празднование
Посмотреть поздравительную открытку
Открытка на день рождения
Посмотреть Желаю, чтобы каждый день был моим днем рождения
Желаю, чтобы каждый день был моим днем рождения
Посмотреть поздравления с 5-летием
С 5-летием
Посмотреть С Днем Рождения 🎈
С Днем Рождения 🎈
Посмотреть С Новым Годом!! 🎉🎈🎊🎆
С Новым Годом!! 🎉🎈🎊🎆
Посмотреть приглашение на день рождения 4YOПриглашение на день рождения 4YO
Посмотреть С Днем Рождения меня 🎂🎁🎈🎉 😹
С Днем Рождения меня 🎂🎁🎈🎉 😹
- Посмотреть изометрический баннер на вечеринке по случаю дня рождения
Изометрический баннер для вечеринки по случаю дня рождения
Посмотреть Cheers to Her Cards
Приветствую ее открытки
Посмотреть 4-ю годовщину One Week Wonders ✨
One Week Wonders 4-я годовщина ✨
Посмотреть
Празднование
Посмотреть 10 лет 🎂
10 лет 🎂
Посмотреть вечеринку
-
Посмотреть С днем рождения
С днем рождения
Фейерверк
Посмотреть кота Муди Яй
Кот Moody Yay
Посмотреть С днём рождения 21
С днём рождения ’21
Посмотреть шаблон свечи
Модель свечи
Посмотреть детскую вечеринку
Детская вечеринка
Посмотреть 3D-коллекцию: День рождения
Коллекция 3D: День рождения
Посмотреть 14 лет Шакуро
14 лет Шакуро
Зарегистрируйтесь, чтобы продолжить или войдите в систему
Идет загрузка еще…
Выбор дня рождения — Smashing Magazine
- 16 мин чтения
- Design Patterns, Юзабилити, Лучшие практики, Веб-дизайн, UX
- Поделиться в Twitter, LinkedIn
Об авторе
Виталий Фридман любит красивый контент и не любит легко сдаваться. Когда он не пишет, он, скорее всего, занимается интерфейсом и UX…
Больше о
Виталий ↬
Вы уже видели их раньше. Сбивающие с толку и разочаровывающие шаблоны дизайна, которые, кажется, преследуют вас повсюду, с одного сайта на другой. Возможно, это отключенная кнопка отправки, которая никогда не сообщает, что на самом деле не так, или всплывающие подсказки, которые после открытия закрывают поле ввода 9.0253 просто , когда нужно исправить ошибку. Они повсюду, и они раздражают , часто бросая нас из одного тупика в другой, в чем-то, что кажется хорошо организованной и плохо спроектированной мышеловкой.
Сегодня в Интернете существует множество разочаровывающих шаблонов проектирования.
Эти шаблоны не являются вредоносными или злонамеренными. У них мало общего с вводящими в заблуждение подсказками о файлах cookie или таинственными CAPTCHA, замаскированными под пожарные гидранты и пешеходные переходы. Они не разрабатываются с плохими намерениями или вредом: никто не просыпается утром в надежде увеличить показатель отказов или снизить конверсию.
Просто с течением времени некоторые более или менее случайные дизайнерские решения стали общепринятыми и принятыми, и, следовательно, они повторяются снова и снова — часто без вопросов или подтверждения данными или тестированием удобства использования. Они стали 90 253 устоявшимися 90 254 шаблонами проектирования. А часто совсем убогие . Снова и снова появляется среди жалоб пользователей во время тестирования.
В этой новой серии статей давайте более подробно рассмотрим некоторые из этих разочаровывающих шаблонов проектирования и изучите лучшие альтернативы , а также множество примеров и вопросов, которые следует учитывать при создании или проектировании. Эти идеи получены в результате исследований пользователей и тестов удобства использования, проведенных вашим покорным слугой и коллегами по сообществу, и, конечно же, все они будут упоминаться в каждом из следующих сообщений.
Мы начнем со скромного и, казалось бы, безобидного паттерна, с которым мы все когда-то сталкивались — печально известного средства выбора дня рождения , которое слишком часто оказывается недоступным, медленным и громоздким в использовании. Мы уже подробно писали об идеальных средствах выбора даты и времени, но средства выбора дня рождения заслуживают отдельного разговора.
Разочаровывающий UX: раскрывающийся список/виджеты дня рождения, начиная с 2021 года
Каждый раз, когда вы подаете заявление о приеме на работу, открываете банковский счет или бронируете рейс, вам, вероятно, придется вводить дату рождения . Очевидно, что входными данными является дата , поэтому неудивительно, что интерфейсы используют виджет, похожий на календарь-выбор даты (собственный или пользовательский), или раскрывающийся список, чтобы запросить это. конкретный ввод.
Вероятно, мы можем определить причины, по которым эти варианты часто предпочитаются. С технической точки зрения мы хотим убедиться, что ввод правильный, и поймать ошибки раньше . Наша проверка должна быть достаточно надежной, чтобы проверять входные данные, предоставлять четкое сообщение об ошибке и объяснять, что именно клиент должен сделать, чтобы исправить это. У нас просто нет всех этих проблем с выпадающим меню или виджетом календаря. Кроме того, мы можем легко предотвратить любые различия в локали или форматировании, предоставляя только те параметры, которые соответствуют всем требованиям.
Требуется представление календаря с очень строгим и явным вводом данных. Доступно только для пользователей мыши. Ввод с клавиатуры отключен. Мне потребовалось 52 секунды (!), чтобы представить свой день рождения. Может показаться, что лучший способ предотвратить ошибки — разработать пользовательский интерфейс таким образом, чтобы ошибки было трудно допустить. Это может означать, что должен быть строгим и явным в дизайне формы — в основном позволяя только для правильно сформированного ввода. В конце концов, предоставление неправильно сформированного ввода невозможно, если все доступные варианты правильно сформированы. Но хотя входные данные действительно будут правильно сформированными, они не обязательно должны быть точными, особенно если предоставление таких входных данных утомительно и разочаровывает.
На практике мы совершаем аналогичные ошибки и со слишком сложными и строгими требованиями к паролю. Нередко людей настолько раздражают эти требования, что они помещают пароли на стикеры на своем экране или прячут их в файле personal.txt
на своем рабочем столе, просто чтобы иметь возможность повторно ввести их при необходимости. . Корпоративные пароли Wi-Fi и сложный SuperPIN для онлайн-банкинга — хорошие примеры этого в действии.
Оказывается, в 9 лет люди очень креативны0255 искажает правила в свою пользу, поэтому, когда система непригодна для использования, она небезопасна; и когда ввод формы непригоден для использования, данные, которые мы получаем, будут менее точными и приведут к большему количеству ошибок. В конечном итоге это, конечно, приведет к ситуациям, когда пользователи будут заблокированы и вынуждены отказаться от пользовательского интерфейса, поскольку они не могут добиться никакого прогресса.
У этой медали есть и обратная сторона. Конечно, мы могли бы устранить всю сложность и всегда предоставлять одно поле ввода, позволяющее пользователям вводить то, что они предпочитают. На практике это означает, что они на самом деле будет печатать то, что им нравится, часто плохо структурированным и неэффективным способом.
В случае ввода дня рождения в тестах удобства использования клиенты вводят что-либо от июля до июля до 06 до 6 , часто со случайными разделителями и несколькими опечатками по пути, а также с смешанный порядок дней, месяцев и лет. Проверка этого ввода после отправки не приносит пользы пользователям, потому что они не знают, какое форматирование ввода будет работать. Очевидно, что это также не удовлетворяет наши потребности.
С нашим дизайном мы должны обеспечить уважительное, прямое руководство наряду с доступной технической реализацией. Это подводит нас к некоторым общим недостаткам нативных средств выбора даты и раскрывающихся списков.
Больше после прыжка! Продолжить чтение ниже ↓
Подводные камни встроенных средств выбора даты и раскрывающихся списков
К сожалению, встроенных средств выбора даты , вызванных
, сопровождаются множеством кошмаров доступности. На момент написания, когда они используются в готовом виде, они не очень доступны для практически любого типа ввода даты. Существует не только множество проблем с программой чтения с экрана, но также проблемы с фокусом и макетом, запутанные и общие сообщения об ошибках.
Я видел большое количество реализаций, полностью отключающих ввод с клавиатуры (см. выше), требующих, чтобы клиенты использовали собственный виджет календаря выбора даты исключительно . И это уж больно, уж больно медленно. Без резервного ввода с клавиатуры пользователям приходится совершать долгий путь между днями, месяцами и годами, выполняя 90 255 десятков и десятков нажатий или кликов 90 256 .
Хотя мы знаем дату сразу, интерфейс предлагает нам перемещайтесь по между датами, а затем найдите нашу дату в ежемесячном обзоре, как только мы туда доберемся. Вот почему эти переживания разочаровывают.
Собственный вид календаря Chrome. Это может быть показано только для пользователей мыши. Недопустимые даты дифференцируются и не выбираются. (Источник изображения) В этом свете раскрывающиеся списки работают намного быстрее и проще в навигации. Они доступны по умолчанию, плюс вместо навигации между месяцами и годами достаточно найти нужные числа в 3 списках — дни, месяцы и годы. Но выпадающие списки по-прежнему медленные. У них проблемы с масштабированием. Зажимание прокручиваемых опций утомительно. Они занимают много места. Список лет длинный. И при указании ввода нам нужно нажать на элемент управления, затем прокрутить (обычно более одного раза), найти и выбрать цель и перейти к следующему раскрывающемуся списку. Это тоже не воодушевляет.
Поэтому нередко можно увидеть, что раскрывающиеся списки считаются крайним средством пользовательского интерфейса и обычно заменяются кнопками (например, для фильтров), переключателями, сегментированными элементами управления или полями автозаполнения, которые сочетают в себе гибкость текстового поля с гарантией поле
. Выпадающие списки не так уж плохи сами по себе; просто пользователи тратят гораздо больше времени, чем необходимо, заполняя их данными.
И тут вопрос про значения по умолчанию . В то время как с выпадающими списками мы часто по умолчанию не вводим вообще ничего ( мм/дд/гггг
), с выбором даты нам нужно предоставить некоторую начальную точку для просмотра календаря. В последнем случае, по иронии судьбы, «начальная» дата обычно совпадает с датой заполнения формы, т.е. 15 мая 2021 г. . Это, конечно, не кажется оптимальным, но какой должна быть дата , правильная дата ? Нам нужно где-то начать , , верно?
Ну, , правда, нет верной даты . Мы могли бы начать раньше или позже, 3 месяца назад или завтра, но в случае выбора именинника все эти варианты являются чистыми догадками. И как таковые, они несколько разочаровывают: без каких-либо входных данных клиентам может потребоваться прокрутить весь путь от 1901 до конца 1980-х годов, а с набором ввода или им нужно будет исправить это, часто перескакивая на десятилетия назад и вперед. . Это взаимодействие потребует безупречной точности прокрутки.
Какой бы выбор мы ни сделали, мы будем ошибаться почти всегда . Это, вероятно, будет отличаться для веб-сайта бронирования отелей или службы доставки еды и множества других вариантов использования — только не для ввода дня рождения. Это подводит нас к разговору о том, как объективно оценить, насколько хорошо разработана форма ввода.
Дизайн можно рассматривать как очень субъективный вопрос. В конце концов, кажется, что у каждого есть свое мнение и предпочтения относительно правильного подхода к той или иной проблеме. Но в отличие от любого самовыражения или искусства, дизайн должен решать проблему. Таким образом, вопрос заключается в том, насколько хорошо конкретный дизайн решает конкретную проблему. Чем более однозначно передан замысел дизайнера, тем меньше ошибок допускает заказчик, чем меньше его прерывают, тем лучше дизайн. Эти атрибуты измеримое и объективное .
По моему собственному опыту, формы — самый сложный аспект пользовательского опыта. Есть так много сложных аспектов от микрокопии и макета формы до встроенной проверки и сообщений об ошибках. Правильная работа с формами часто требует надлежащего отображения внутренних и сторонних ошибок во внешнем интерфейсе и упрощения сложной базовой структуры до набора предсказуемых и разумных полей формы. Это может легко стать разочаровывающим кошмаром в сложных устаревших приложениях и сторонних интеграциях.
Итак, когда дело доходит до дизайна формы , в наших проектах мы всегда стараемся измерить качество конкретного решения на основе следующих 9 атрибутов:
- Ментальная модель
Насколько хорошо работает наша дизайн формы вписывается в ментальную модель заказчика? Запрашивая личные данные, мы должны запрашивать ровно тот минимум, который необходим нам, чтобы помочь нашим клиентам начать работу. Мы не должны запрашивать какие-либо конфиденциальные или личные данные (пол, день рождения, номер телефона), если у нас нет для этого веских причин, и объяснять это в пользовательском интерфейсе. - Сложность
Сколько элементов ввода мы отображаем на странице, на мобильных устройствах и на настольных компьютерах? Если форма содержит 70–80 полей ввода, а не отображает их все на одной странице или использует макет с несколькими столбцами, может быть хорошей идеей использовать шаблон списка задач, чтобы разбить сложность на более мелкие, управляемые фрагменты. - Скорость ввода
Сколько времени и усилий нужно заказчику для правильного заполнения данных? Для данного ввода, сколько нажатий/нажатий клавиш/операций требуется для точного заполнения формы заданными данными, при условии, что по пути не будет допущено ошибок. - Доступность
Говоря о скорости ввода, мы должны убедиться, что мы поддерживаем различные режимы взаимодействия, в первую очередь пользователей программ чтения с экрана и пользователей клавиатуры. Это означает, среди прочего, правильно установленные метки, большие кнопки, метки, размещенные над полем ввода, и правильное сообщение об ошибках. - Масштабируемость
Если бы нам когда-нибудь потребовалось перевести пользовательский интерфейс на другой язык или адаптировать его для другого форм-фактора, насколько это было бы просто и сколько проблем это вызвало бы? (Типичный пример проблемного решения — паттерн плавающей метки, о нем мы поговорим в отдельном посте.)
- Серьезность сбоев
Как часто мы прерываем клиентов, будь то загрузка счетчиков, ранняя или поздняя встроенная проверка, замораживание частей пользовательского интерфейса для настройки интерфейса на основе предоставленного пользовательского интерфейса (например, после выбора страны), частота ошибочных предварительно заполненных данных или ошибочно автоматически исправленных данных? - Коэффициент успешного заполнения формы
Сколько клиентов успешно заполнили форму без единой ошибки? Если форма хорошо разработана, подавляющее большинство клиентов вообще не должны видеть никаких ошибок. Например, для этого требуется, чтобы мы использовали автозаполнение браузера, порядок табуляции был логичен, а внесение изменений было обычным и очевидным. - Скорость восстановления
Насколько высока доля клиентов, которым удалось обнаружить ошибку, исправить ее и перейти к следующему шагу формы? Нам нужно отслеживать, как часто появляются сообщения об ошибках и какие сообщения об ошибках встречаются чаще всего.Вот почему часто бывает полезно зайти в службу поддержки и сначала узнать у них, на что клиенты часто жалуются.
- Частота отказа от формы
Сколько клиентов отказываются от формы? Обычно это происходит не только из-за сложности формы, но и потому, что клиенты не могут найти способ исправить ошибку из-за агрессивных валидаторов или отключенных кнопок «отправить». Это также происходит из-за того, что форма запрашивает слишком много конфиденциальной и личной информации без уважительной причины.
Чтобы понять, насколько хорошо работает форма, мы проводим исследований юзабилити с клиентами, получающими доступ к интерфейсу на своем собственном компьютере — будь то мобильное устройство, планшет, ноутбук или настольный компьютер — на своей ОС, в своем браузере. Просим записывать экран, если это возможно, и использовать протокол мышления вслух, чтобы проследить, где, как и почему случаются ошибки. Мы также изучаем, как быстро клиент переходит от одного поля формы к другому, когда он делает паузу и думает, и когда происходит больше всего ошибок.
Очевидно, что количество нажатий или кликов не всегда говорит о том, что ввод был простым или громоздким. Но некоторые режимы ввода могут с большей вероятностью генерировать ошибки или вызывать путаницу, а другие могут быть выбросами , требуя всего в раз больше времени по сравнению с другими вариантами. Это то, что мы ищем в тестах.
Теперь давайте посмотрим, как мы можем применить это к задаче ввода дня рождения.
Если кто-то спросит о вашем дне рождения, вы, вероятно, будете иметь в виду определенную последовательность цифр. Можно заказать в дд/мм/гггг
или мм/дд/гггг
, но это будет строка из 8 цифр, которую вы повторяете во всевозможных документах с самого раннего возраста.
Мы можем использовать эту простую модель ввода дня рождения с помощью простого поля с одним вводом , которое будет объединять все три ввода — день, месяц и год. Это означало бы, что пользователь будет просто набирать строку из 8 цифр, все время оставаясь на клавиатуре.
Однако этот подход вызывает несколько проблем:
- нам нужно поддерживать автоматическое форматирование и маскирование,
- нам нужно объяснить положение ввода дня/месяца,
- нам нужно поддерживать поведение
Кнопка Backspace
поперек ввода, - нам нужно отслеживать и скрывать/показывать/постоянно отображать маскирование,
- нам нужно поддерживать переход к определенному значению (например, месяц),
- нам нужно минимизировать клики ярости и навигацию в ввод для изменения определенного значения на мобильных устройствах,
- Если автоматическое создание не используется, нам нужно придумать набор правил очистки и проверки для поддержки любых видов разделителей.
В своей книге о шаблонах проектирования форм Адам Сильвер утверждает, что использование нескольких входных данных вместо одного редко является хорошей идеей, но это хороший вариант для дат . Мы можем четко сообщить, что представляет каждый ввод, и мы можем выделить конкретный ввод с помощью стилей фокуса. Кроме того, проверка намного проще, и мы можем легко сообщить, какая конкретная часть ввода кажется недействительной и как это исправить.
Мы могли бы либо автоматически переводить пользователя с одного ввода на другое, когда ввод завершен, либо позволить пользователям перемещаться между полями самостоятельно. На первый взгляд первый вариант кажется лучше, так как для ввода потребуется всего 8 цифр, набранных одна за другой. Однако, когда люди исправляют ошибки, им часто требуется буфера ввода — пространство внутри поля ввода для исправления существующего ввода.
Например, часто можно увидеть, как люди печатают 01, , поняв, что они допустили ошибку, затем изменив ввод на 010, , а затем удалив первый 0, , чтобы получить перевернутую (и правильную) строку — 10. Избегая автоматического перехода от одного поле к следующему, мы могли бы создавать меньше проблем и сделать простой пользовательский интерфейс немного более предсказуемым и простым в использовании.
Чтобы объяснить ввод, нам нужно указать меток для дня, месяца и года, а также, возможно, показать пример правильного ввода. Метки не должны быть плавающими, но могут удобно располагаться над полем ввода вместе с любыми подсказками или примерами, которые мы можем захотеть отобразить. Кроме того, каждый ввод может быть выделен в фокусе.
Шаблон дизайна, предложенный Адамом Сильвером из команды Gov.uk. (Перейти к демонстрации)За годы тестирования я не смог обнаружить ни одной проблемы с этим решением, и неудивительно, что шаблон используется и на Gov.uk.
Когда вам все-таки нужен выбор даты
Хотя приведенного выше решения, вероятно, более чем достаточно для ввода дня рождения, оно может быть недостаточно для более общих ситуаций. Нам может понадобиться ввод даты, который менее буквален, чем день рождения, когда клиентам придется выбирает день, а не предоставляет его (например, « первая суббота июля» ). В этом случае мы могли бы улучшить три поля ввода с помощью виджета календаря , который также могли бы использовать пользователи. Ввод по умолчанию будет зависеть либо от текущей даты, либо от будущей даты, которую обычно выбирает большинство клиентов.
Адам предоставляет простой пример кода для шаблона «Памятная дата» в своей системе дизайна NoStyle. Он решает множество задач по разработке и позволяет избежать множества проблем с доступностью, и все это за счет того, что не нужно нажимать на виджеты календаря или ненужной прокрутки по раскрывающимся спискам.
Завершение
Конечно, хорошее управление формой зависит от типа ввода даты, который мы ожидаем. Для планировщиков поездок, где мы ожидаем, что клиенты выберут дату прибытия, может быть полезен гибкий ввод с поиском по календарю.
Когда мы спрашиваем наших клиентов об их дате рождения , мы запрашиваем очень конкретную дату — очень специфичную строку , где относится к точному дню, месяцу и году. В этом случае выпадающий список не нужен.