Wednesday, January 8, 2020

IRL ISO 8601!

This morning I went to the doctor and experienced my first real-life ISO 8601 Internationalization issue.

The Check-in Nurse asked me to verify my birthday. I told her "7/1/xxxx" instead of "July 1, xxxx", and she told me she hoped I had a Happy Birthday yesterday.

I appreciated the sentiment but was knocked off kilter for a second. My birthday happened several months ago! Then I quickly realized that 1) She is from somewhere other than the US and 2) THIS was the exact reason why I have been a long-time proponent of using ISO 8601 data standards for database and application dates. (Those were my actual thoughts, and yes, they were very geeky.)

For those not familiar, ISO 8601 essentially describes a standard way to display dates so that you remove any confusion in common international representations.

For instance, in the US, a date of "7/1" is interpreted as "the 1st day of July". But in most of the rest of the world, "7/1"means "the 7th day of January".

Countries by Date Format

It's not difficult to see how this can cause quite a few problems because we in the US have gone our own way on this.

She apologized for her "mistake", but all I could think was that it was actually my national culture that was on the divergent side.

Anyway, it was a great personal reminder of the necessity for a standard.


TL;DR: If you want to avoid confusion when you store or display dates, please use some form of yyyy/dd/mm ... (though I guess even those lower-cased masks can lead to incorrect display of a date in different coding languages).

PS: I HATE DATES!

No comments:

Post a Comment