Sorting it all Out Michael Kaplan's random stuff of dubious value Be sure to read the disclaimer here first!
I had an old friend/colleague and semi-regular reader of the blog who asked me this weekend how I could have possibly done over 1000 posts before seriously even mentioning the SWWB (Single World Wide Binary) model this last Friday.
Just lucky, I told her. :-)
In truth, it is a term that I hate. Like i18N, the spoken form of the nickname is simply way too long. And as a feature name it seems to lie on its face, talking about single anything when referring to an operating system that probably contains more files in it than the population of the largest city in Idaho.
But the concept is one that I like, so perhaps my distate for the name is something I will just have to get over....
The idea behind SWWB is best thought of at the level of a simple application, such as Notepad, the single most known app in all of Windows.
The principle is simple -- let there be one core version of all of the basic code, used worldwide. What is added later is all of the localized resources, in separate, pluggable modules.
Some people like to call it the Language Neutral model instead of SWWB, though nobody seems to have come up with a short name using it though. It describes the same concept -- the idea that the core code will not contain language-specific elements that are added later in individual markets. This makes a sharp contrast to the older "throw code over the fence" model, where developers in Japan or wherever would modify the project for their market. The Language Neutral model has many advantages to it, such as:
And so on.
Which is not to say Windows started this way. In fact, it is fair to say that it is a project whose roots are firmly planted in the "throw code over the fence" model.
I shudder to think about how much money has been spent to finally (in Vista) be approaching SWWB -- enough to make a CFO shudder and want to go back in time to fire whatever CFO didn't push for SWWB back when things were first getting started.
This is really why issues like the language SKU-specific nature of DEFAULT_GUI_FONT bother me as much as they do. Because by violating the principles of a Language Neutral core, they force people who are testing functionality to have to look at other language SKUs.
And even worse, the exact nature of the functionality differences between language SKUs is much more difficult to describe and/or document.
I guess we need a list for Vista -- "language natural except for ___________", where the blank would be filled in with the list of items like this?
Of course, other complications arise, though they will be the subject of future posts. :-)
This post brought to you by "ཏ" (U+0f4f, a.k.a. TIBTAN LETTER TA)