Date Time Picker Design Goals
Allow users to enter dates and times:
easily and efficiently
without disrupting their workflow
in the manner in which they are most comfortable (e.g. text entry or selecting a date from a calendar display)
Minimize the date picker user's memory load:
by providing a calendar so they don't have to remember or calculate what day of the week a certain date is
by, when there are multiple related dates on which a user is acting (e.g. start & finish date), showing them all to the user wherever possible so they don't need to remember the other dates
Assist users in entering dates and times in the accepted format(s) on the first try
Validate users' input of dates and times, and provide helpful and appropriate feedback if the date or time entered does not match the accepted format(s)
Present the date and time information users need when viewing or selecting a date following the conventions of their locale
Create a date picker that is easily and efficiently navigable using the keyboard and screen readers