Part 2: The string that won? Didn't have a mark on him!
Part 3: Should you let a string make it's case? If so, Y?
This post is not going to be about Han Solo and whether he shot first in the Star Wars scene with the bounty hunter Greedo. If you are here for that, see http://www.hanshootsfirst.org/ or the Wikipedia article about the issue.
Or you can see the Recursion shot first! article for am amusing photo of George Lucas wearing a t-shirt that says Han Shot First while talking to Harrison Ford.
This article, unlike those, is (sort of) about Chinese ideographs (which is what I promised in the last article) in part, although with a minor diversion into Korean.
Now if you want to be absolutely technical, Chinese ideographs (or ideograms if you prefer) actually aren't ideographs at all; they are logographs (or logograms if you prefer), since they represent morphemes (words) and not ideas. But that is neither here nor there for the purposes of this article.
It is also a little known fact that pre-Vista, on Windows the Hanja (along with the Hangul) tends to sort before all of the other scripts (something not true of CJK Extension A or CJK Extension B, but true of most of the rest in the table). I mentioned this years ago in Unlike LCMapString, the sort keys for English characters precede the sort keys for Korean, where I also explained that this order changes does not happen in .NET.
In Vista, the new sort version was an opportunity to fix this inconsistency (which was particularly painful for its effect on the ,.NET Compact Framework, which used the built-in CE tables and thus would have different results than the regular .NET Framework).
Notice the changes that literally swap the first letter in the DEFAULT table (A) with the first character in the Korean table in the Korean sort? It is easy if you live in the USA and English is your native language to claim that the script positions are arbitrary and use that as the basis to object to this re-ordering in Korean, but I can understand the original desire to put Korean first in a Korean sort (as someone who happens to be from a place that has always listed first and a person who's last name never shows up first or last in an alphabetized list!).
Notice also how the Hangul do something fairly consistently always, even if the Hanja only follow for Korean.
And finally, did you see the change in Server 2003? Although no substantive comment or bug or spec came with the change, it happened in the same checkin as the one I mentioned in Every character has a story #29: U+1000^H^H^H^H0f40, (TIBETAN or MYANMAR LETTER KA, depending on when you ask), although unlike the parts I discussed in that post, the changes here have very little to do with Unicode conformance; they relate to a desire to not have Hangul to sort in with the same weight range that is shared among all of the East Asian collations (because even though Hangul does not mean much within Chinese or Japanese, it can still be unsettling if you have Hangul within your data and you see it showing up randomly inside your Han or your Kanji.
2008/02/19 The most important language in the whole wide world is yours, and you hardly even know yours! -- NOT!