I have two arbitrary dates. I was wondering if somebody can suggest the rules to create a text message which tells in a very effective way what the two dates are.

Let's assume that my solution is just to simply display the two dates:

[23/06/09 10:00:00am - 23/06/09 12:00:00am]

a more effective way would be to spot that the two dates share the same yyyy-mm-dd and therefore instead produce the following:

[23/06/09 10:00:00am - 12:00:00am]

Another example could be:

[23/06/09 00:00:00am - 23/06/09 12:59:59pm]

which could become

[23/06/09 All Day]
  • 1
    Great question (and good examples)! I'll be interested to see what sort of responses you get. Sep 28, 2011 at 19:07
  • Do you propose to spell out 'next day', 'week', 'month'...? The possibilities are blinding.
    – GUI Junkie
    Sep 28, 2011 at 20:17
  • By "text message", do you mean SMS, or just some textual representation? Sep 28, 2011 at 20:31
  • @StefanKendall No,by text message I mean an arbitrary string. (sorry for the confusion)
    – chack
    Sep 28, 2011 at 20:47
  • @GUIJunkie Yes the possibilites are blinding but I am sure some are better than others.
    – chack
    Sep 28, 2011 at 20:48

4 Answers 4


I like your ideas. Although to improve scannability I'd change the formatting to something like this...

June 23rd, 2009 (10 AM to 12 PM)

June 23rd, 2009 (All day)

The dd/mm/yy or mm/dd/yy formats are often a source of confusion so it'd be better to remove all doubts by actually spelling out the month. Also, if the minutes and seconds are at 00 then they really don't need to be displayed.

  • I like that, never really thought about it, but it does make it very easy to read just like that.
    – Matt
    Sep 28, 2011 at 20:31
  • Working with Europeans is especially painful if you're using a numeric date format. You might also want to toss in the time-zone, or make sure you always convert non-user-created events to the user's timezone. Sep 28, 2011 at 20:33
  • Thanks Steve, I like your answer. I will hold on a bit before tagging as accepted to see if more people want to add more comments.
    – chack
    Sep 28, 2011 at 20:43
  • Stefan - Working with Americans is also especially painful when using date formats. :-P
    – Martin
    Sep 29, 2011 at 14:06

+1 for Steve's suggestion.

In case you are showing several events on the same day, you could also leave the day out from all but the first event, and replace it with "...", e.g.

June 23rd, 2009 (10 AM to noon)

        ... ( 1 PM to  3 PM)

and so on.

Also consider showing "noon" for 12 PM and "midnight" for 12 AM -- some people get confused about which 12 is PM or AM.

  • 3
    Great line: "Also consider showing "noon" for 12 PM and "midnight" for 12 AM -- some people get confused about which 12 is PM or AM." As embarassing as it is I am definitely one of those people
    – chack
    Sep 28, 2011 at 20:45

As I am doing more research and and trying out different solution, I would like to share two facts which I think I have learnt.

1) Display the duration.

No matter how clearly I try to display the dates, nothing helps more than a short description of the duration.

23 JUN 14:50pm - 16:53pm (2 hours and 3 minutes)

23 JUN 14:50pm - 24 JUN 16:53pm (26 hours) ...

2) Level of detail in the date.

if you wonder whether you should display "seconds" or not that depends on the range which is defined by the two dates. if the range is above some threshold (let's say 2 hours) then you should not otherwise you should. the same logic then applies for minutes, hours, days,...

This is kinda intuitive if we describe a period of two weeks we never says 14 days and 3 hours. We just say: 14 days.

23 JUN - 6 JUL (14 days)

  • I would agree if the times are to the minute. I am less convinced if they are to the hour or quarter hour. And the problem of the level of detail if the time is set to the hours ( as noted ) is complex. Sep 29, 2011 at 8:16

I guess it depends on your users, but I prefer the times including minutes:

June 23rd, 2009 (10:00 AM to 12:00 Noon)

June 23rd, 2009 (All day)

( taken from Steves and Erions examples above )

And 12:00 Noon is, I think, better than just Noon. But this is rather subjective. I would ask some of your users which format they prefer. It does depend on whether you are only specifying hours, or minutes too.

And I know that expectations of date formats vary a lot between cultural groups.

  • 1
    I agree. If it were to say "June 23rd Midnight" that adds the confusion of whether this is the midnight at the beginning or at the end of this day. "June 23rd 00:00 Midnight" reduces that confusion.
    – JonW
    Sep 29, 2011 at 8:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.