Usability in practice: "Enter a date"

Published on March 03, 2008

Usability in practice: "Enter a date"

    Hello again to everyone.
    Today I will talk about my favorite - about usability.

    In Russian there is a replacement for this buzzword - Convenience. But when it comes to the convenience of human-computer interaction, we immediately speak of usability.

    This article will only consider the date entry form, which we find so often when registering on any site. Most often asked to enter your date of birth. Why all admins in the world know my birthday is unknown, but we will consider that for statistics.

    First, plunge into the story.

    All the very first sites and programs offered the user this field:

    1.gif

    Naturally, problems arose immediately. People filled this field as best they could and used to:
    July 12, 1980
    12-07-1980
    07/12/80

    and so on ...

    Therefore, the following was invented:

    2.gif

    But some were on the drum for this, others simply did not read what was written in brackets.
    Then the programmers came up with the idea of ​​dividing the field into three:

    3.gif

    It seemed to be a sigh of relief. But users are dumb people and they do not care about these fields. For these reasons, a month was driven into the field for a day and vice versa. Who introduced the month by number, and who by word.

    The developers became thoughtful and realized that the best way to avoid mistakes from stupid users is to prevent them from allowing them. And they invented this:
    4.gif

    In this form, this form is found on most sites to this day. And everything seems to be fine, but there are many BUT.

    Firstly, she doesn’t exclude everyone on February 31st.
    secondly, it’s easy to choose a month, but it’s a very difficult task to choose a day, and especially a year. Judge for yourself:
    5.gif

    It takes a long time to scroll to get to the right year. And we, after all, strive for ideality and must adapt the interface, both for the elderly and for infants. In this regard, on many current sites we see the following:

    mail.ru
    6.gif

    Yandex
    71.gif
    All sorts of
    8.gif

    ebay
    forums Unfortunately, all these forms are not foolproof and do not exclude the entry of, say, such a date: November 31, 3450. What can we do? And you can do a lot. We can take into account the characteristics of each month, as well as a leap year or not. - Yes, you fucked up! - programmers will say.9.gif 







    But I will say that this module will have to be done once and then in the future it will be easily screwed to any of your products.

    But in connection with this, the filling procedure will have to be changed: first we will enter the year and month, and then, based on the data received, put the desired number of days in the Day list. Moreover, the Day list will not be available to the user until he selects the Year and Month.
    10.gif

    11.gif

    Well, it’s like there shouldn’t be any problems, using as usual moves from left to right.

    But there are still problems. The Year and Day lists are still not usable.
    What can we do?

    I came up with this:

    121.gif

    In my opinion, finding the required year in such a list will be easier - the eye easily clings to dozens, and it’s also easy to draw down a few lines. No tedious scrolling.

    The list of the Month, it seems, does not require any modernization.

    But the Day can be represented in the classic calendar block Naturally, days should be displayed based on the first two fields. In my opinion, this form of entering the date of birth will allow you to avoid knowingly incorrect dates and give the user a convenient input. I will be glad to any comments.

    13.gif