Friday, November 18, 2005

mindCandy: Date formatting and the MacArthur Code :-)

When I was doing my taxes this year, I became increasingly frustrated with the lack of a standard formats for dates. Receipts I had gathered from across Canada and the US alternately had dates formatted as...

- month/day/year (this makes most sense to me as it is how we read dates aloud in english, e.g. "June 20th, 2004". This seems to be most standard in the US);
- day/month/year (I can understand this in french for the same reason as above, e.g. "20 Juin 2004". However, this also seems to be standard in Britain);
- year/month/day (okay, not so sure about this one - I guess it at least goes from the biggest category, i.e. year, to the smallest, i.e. day, letting you get increasingly specific as you read it. I've seen it in Canada, but it's used in South Africa as a standard).

So what the heck am I supposed to know about a date written as 03/04/02? Is that March 4th, 2002? Or is it April 3rd, 2002? Or maybe April 2nd, 2003? There is something wrong here!

As comfortable as I might feel having dates abbreviated as they are spoken in the language (e.g. 03/04/02 meaning "March 4th, 2002", as that is how it would be spoken in english - let's face it, how obnoxious are you to actually say "the 4th of March, 2002" ;-) ), I think the biggest criteria is necessarily that the abbreviation be unambiguous.

To this end, I can live with 20JUN04 (or 20/Jun/04 or whatever) - this allows me to unambiguously decipher what that date is, so that's good. However (I've mentioned I'm neurotic, right?), that makes us use an extra character to describe the date! This not only interferes with my love of conciseness (concision?), it also stops us from being able to categorize all dates, months, years, and more (see below) with two characters. Well, have no fear, I am here to bring you a solution to this great problem of our time - one that will unambiguously allow us to decipher date abbreviations without the horror of that extra character - I bring you - the MacArthur Code (cue the trumpets :-) ):

January = JA
February = FB
March = MR
April = AP
May = MY
June = JE
July = JL
August = AG
September = SP
October = OC
November = NV
December = DC

Now I know that some of you are going: "JE" for June - how's that make sense? Well, as hooked on phonics as I am (and so "JN" would definitely be lovely for June in this respect), the key here is lack of ambiguity. "JN" could be June, sure, but it could also be January. "MA" could be May, but it could be March too. So, although I'm running with the phonetic abbreviations when I can, I must stay true to being unambiguous. Let me explain...

"JE" couldn't be anything but June, as there is no "E" in January or July. Similarly with "JA" for January and "JL" for July. Now what other months start with the same letters? "MY" must be May, as there's no "Y" in March, and "MR" must be March, as there's no "R" in May. So you see, like all good design, this enables the user to figure out its function without having to resort to other instructions - the instructions are in fact built into the design and reinforced by our widespread cultural conventions (not to get off-track, but this is also one of the reasons why Apple is better than Microsoft).

A couple of paragraphs ago, I mentioned that there would be even more (that's called "foreshadowing" ;-) ) and I did not lie. In addition to 2 character codes for every other aspect of time - for years, for months, for dates, for hours, for minutes, for seconds, we also have - the days of the week! (this time cue the tubas - those guys have a hard time getting work otherwise :-) ):

Monday = MN
Tuesday = TE
(no "E" in "Thursday")
Wednesday = WD
Thursday = TH
(no "H" in "Tuesday")
Friday = FR
Saturday = ST
(no "T" in "Sunday" - I'm going for a "T" instead of an "A" b/c most of the other days use their third letter/second consonant - gotta be as consistent as possible ;-) )
Sunday = SN (no "N" in "Saturday")

Now go forth, my neurotic and space-obsessed brothers and sisters, and bring the MacArthur Code to the ambiguous, character-wasting masses - it is our obligation, nay, our destiny! :-)

Posted: FR18NV05 (oh yeah, baby!)

PS: I know someone will bring up the fact that two characters for a year is not unambiguous, and you are right. However, in all practicality, I'm not talking about dates a hundred years ago - I'm talking about dates within our lifetimes. Go on and take your extra two character spaces for that if you really need them (trouble-maker!) - I've saved those two in my new month and day abbreviations anyway ;-) .
Submit to:    submit mindCandy: Date formatting and the MacArthur Code :-) to digg.comDigg  |   book mark mindCandy: Date formatting and the MacArthur Code :-) in  |   submit mindCandy: Date formatting and the MacArthur Code :-) to slashdot.comSlashdot

11/18/2005 12:19:00 p.m.  


Blogger Matt Hoult said...

While I see your reasoning and also aplaud you for saying so out loud, it has to be said that that simply isn't going to catch on.

I think that the format 05.11.18 (YY.MM.DD) will be the format of the future; the Africans are right. As we continue to work towards an ever "computerised" world we are in need of simple, international formatting and storage. If we name a bunch of files say "CommandN -" (as we would in Britain say) then they arn't in the correct chronological order. If we name them as the SA's though, they will be ("CommandN -").

Of course you could just name it "CommandN #022" but that would get screwed up without proper number formatting (ie. 01 not 1 and even then you would have to guess how many CommandNs will be made over it's lifespan). Not the best way to tackle problems.

YY.MM.DD all way!

November 18, 2005 2:21 p.m.  
Anonymous Ness said...

You guys are rediscovering the ISO date standards.

The only thing that is hard to do is to enforce people to use it. Everyone likes to have their own date and time standards.

This wasn't a problem until the world became a small place as each standard was happily isolated from the others.

Anyway, read the link and you'll be amazed!

November 19, 2005 4:14 p.m.  
Anonymous Randy said...

My university uses the following for days of the week:


Seems to work around here :)

November 29, 2005 3:32 a.m.  
Blogger Jeff MacArthur said...

Your point about the "computerized"...

(for some reason, even though we Canadians tend to keep the "ou"s in words like the Brits, we seem to use "z" like the Americans, although pronounced zed, unlike in the US)

...ordering is certainly a good one, Matt. The only strike against it is that people never, as far as I know, verbally articulate a date in that manner (if only that were true, my quest would be at an end :-) ).

Great link, Ness - thanks! I like those one-letter abbreviations too, Randy.

One little addition to this discussion:
Ever since I had a girlfriend that worked retail (endlessly moving shifts in half hour increments), I have adapted a "prime" or "quote" symbol (') after a time to indicate "half past". So for 3:30, I use the shorthand 3'. It's surprising how often I use this now, and it makes three numbers/symbols turn into a tiny penstoke!

December 15, 2005 2:00 p.m.  

Post a Comment

<< Home