On describing poorly (and on not listening)

by Michael S. Kaplan, published on 2008/08/05 03:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2008/08/05/8833203.aspx


You may recall blogs like How do I feel about lstrcmpi? I think it blows.... where I pointed out a case where an entire division full of developers have essentially been doing something wrong for over a decade.

I have even put out the straw man argument that perhaps if everyone gets it wrong so consistently then perhaps changing the function to meet might be easier than changing the expectations of so many developers.

Now there are other times that we can run across this kind of problem.

Like the one I ran across today as I was reviewing a ton of code.

It is the problem I discuss in The user locale of the system account is not the system locale.

There is important (if subtle) message in that blog.

That message, quite simply put, is

The default user locale of the SYSTEM account is not the default system locale.

This is a point that I am physically unable to make any clearer.

They aren't the same.

The former, on the one hand, is changing the default user locale on the first tab in Regional and Language Options (RLO) and settable by applying changes to the system accounts on the bottom of the last tab of RLO. No reboot is needed but programs already running under the system account may need to be cycled to find out about the change. And its value is not returned by GetSystemDefaultLCID.

The latter, on the other hand, is settable by changing the Language for non-Unicode programs.on the last tab of RLO, an the reboot is absolutely required even if you cycle services running under the system account.

These two settings are not connected functionally and are only connected in people's minds because of their respective older names both having the word SYSTEM in them.

There is a third setting that is also unrelated but bolsters the notion of the separate identity of the SYSTEM account -- the one I describe in UI language of the LocalSystem account (which almost never shows UI) -- which is not returned by GetSystemDefaultUILanguage though it sounds like it maybe ought to -- but we'll set that aside for the moment. :-)

Anyway, people keep making this same mistake, which leads to real problems when services are not running with the settings that the expect even if customers are informed about how to apply changes to default/system accounts and they properly follow the steps to do this.

All I can do is just yell at the top of my lungs here so that future Google searches can pick up on it, using the words:

The default user locale of the SYSTEM account is not the default system locale.
The default user locale of the SYSTEM account is not the default system locale.
The default user locale of the SYSTEM account is not the default system locale.
The default user locale of the SYSTEM account is not the default system locale.

And just hope that people are listening? :-)

Plus maybe whisper loudly in some ears at work....


This post brought to you by δ (U+03b4, a.k.a. GREEK SMALL LETTER DELTA)


Heath Stewart on 5 Aug 2008 5:32 PM:

Spamming Google may result in your page not showing up in searches. :)

(At least at one point long ago they documented that.)

Michael S. Kaplan on 5 Aug 2008 7:18 PM:

That's a fair point.

I wonder whether they would do the same if it were a less automated decision? :-)

Jan Kučera on 8 Aug 2008 7:50 PM:

I hope everyone will forgive me this comment, but I must add:

And a voxel is not a little cube!

You are not the only one facing such problem, Michael. If interested, I think you will find the memo I'm referencing... http://alvyray.com/Memos/MemosMicrosoft.htm

Good luck!


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