All abbreviated days of week are created equal. But some are less equal than others!

by Michael S. Kaplan, published on 2013/04/02 07:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2013/04/02/10406831.aspx


Short date formats, as a general rule, are pretty consistent.

They always have a d or a dd. And not a ddd or a dddd.

Which is just another way of saying that we have 6 or 06, but never Sat or Saturday.

They always have an m or mm. And not an mmm or an mmmm.

Which is just another way of saying that we have 1 or 01, but never Jan or January.

And they always have a yy or yyyy.

But there is something else about rules that is important to remember.

There is always an exception that proves them!

Take Japanese, for example.

It's LOCALE_SDAYNAME* values have been consistent for quite some time:

As have its LOCALE_SABBREVDAYNAME* values:

And its LOCALE_SSHORTESTDAYNAME* values:

Savvy readers will note that the latter two sets are identical -- the abbreviated name is the shortest name, every day of the week.

And now we get to the formats.

The default LOCALE_SSHORTDATE for ja-JP is:

yyyy/MM/dd

And the full list including optional alternate formats is:

Wow! Formats five through seven of the 8 include the day name in parentheses!

And have had this for many versions of Windows!

You can see it in Regional and Language too, shown here for Windows 7 and Server 2008 R2:

 

Now it is easy to get unhappy about this break in the rules.

Even though it has been going on for more years than most of these people got their jobs!

Or, as we learned from prior blogs Sometimes MMM is MMMM, other times MMM is M! (aka Not all abbreviations are created equal) and The awkward insert of shortest day names..., relying in general rules in locale data is a bad idea.

A really, really, really, REALLY, REALLY bad idea.

Just as it was with abbreviated months and their use, so it is with abbreviated days.

Please just embrace the differences, and give people their preferences.

They'll be grateful in Japan.

And in the rest of the world.... :-)


David Warner on 3 Apr 2013 2:31 AM:

That doesn't look like Windows 8, unless you went to a lot of effort to enable the old Aero theme from Windows 7 :)

There are a lot of alternate short date formats with MMM or even MMMM (English - Australia has this), and Kazakh's only option is 'd-MMM-yy'.

I noticed one of the options for Sakha (Russia) short dates is 'dd yyyy MM d' - do the Sakha people really write the day twice, once with a leading zero?

Michael S. Kaplan on 3 Apr 2013 7:11 AM:

Windows 7, sorry!


go to newer or older post, or back to index or month or day