On 19/01/2019 01:21, Shawn Steele wrote:
*>> *If they are obsolete apps, they don’t use CLDR / ICU, as these are designed for up-to-date and fully localized apps. So one hassle is off the table. Windows uses CLDR/ICU. Obsolete apps run on Windows. That statement is a little narrowminded. >> I didn’t look into these date interchanges but I suspect they won’t use any thousands separator at all to interchange data. Nope >> The group separator is only for display and print Yup, and people do the wrong thing so often that I even blogged about it. https://blogs.msdn.microsoft.com/shawnste/2005/04/05/culture-data-shouldnt-be-considered-stable-except-for-invariant/
Thanks for sharing. As it happens, I like most the first reason you provide: * “The most obvious reason is that there is a bug in the data and we had to make a change. (Believe it or not we make mistakes ;-)) In this case our users (and yours too) want culturally correct data, so we have to fix the bug even if it breaks existing applications.” No comment :)
>> Sorry you did skip this one: Oops, I did mean to respond to that one and accidentally skipped it.
No problem.
>> What are all these expected to do while localized with scripts outside Windows code pages? (We call those “unicode-only” locales FWIW)
Noted.
The users that are not supported by legacy apps can’t use those apps (obviously). And folks are strongly encouraged to write apps (and protocols) that Use Unicode (I’ve blogged about that too).
Like here: https://blogs.msdn.microsoft.com/shawnste/2009/06/01/writing-fields-of-data-to-an-encoded-file/ You’re showcasing that despite “The moral here is ‘Use Unicode’ ” some people are still not using it. The stuff gets even weirder as you state that code pages and Unicode are not 1:1, contradicting the Unicode design principle of roundtrip compatibility. The point in not using Unicode, and likewise in not using verbose formats, is limited hardware resources. Often new implementations are built on top of old machines and programs, for example in the energy and shipping industies. This poses a security threat, ending up in power outages and logistic breakdowns. That is making our democracies vulnerable. Hence maintaining obsolete systems does not pay back. We’re all better off when recycling all the old hardware and investing in latest technologies, implementing Unicode by the way. What you are advocating in this thread seems like a non-starter.
However, the fact that an app may run very poorly in Cherokee or whatever doesn’t mean that there aren’t a bunch of French enterprises that depend on that app for their day-to-day business.
They’re ill-advised in doing so (see above).
In order for the “unicode-only” locale users to use those apps, the app would need to be updated, or another app with the appropriate functionality would need to be selected.
To be “selected”, not developed and built. The job is already done. What are people waiting for?
However, that still doesn’t impact the current French users that are “ok” with their current non-Unicode app. Yes, I would encourage them to move to Unicode, however they tend to not want to invest in migration when they don’t see an urgent need.
They may not see it because they’re lacking appropriate training in cyber security. You seem to be backing that unresponsive behavior. I can’t see that you may be doing any good by doing so, and I’d strongly advise you to reach out to your customers, or check the issue with your managers. We’re in a time where companies are still making huge benefits, and it is unclear where all that money goes once paid out to shareholders. The money is there, you only need to market the security. That job would better use your time than tampering with legacy apps.
Since Windows depends on CLDR and ICU data, updates to that data means that those customers can experience pain when trying to upgrade to newer versions of Windows. We get those support calls, they don’t tend to pester CLDR.
Am I pestering CLDR… Keeping CLDR in synch is just the right way to go. Since we’re on it: Do you have any hints about why some powerful UTC members seem to hate NNBSP in French? I’m mainly talking about French punctuation spacing here.
Which is why I suggested an “opt-in” alt form that apps wanting “civilized” behavior could opt-into (at least for long enough that enough badly behaved apps would be updated to warrant moving that to the default.)
Asmus Freytag’s proposal seems better: “having information on "common fallbacks" would be useful. If formatting numbers, I may be free to pick the "best", but when parsing for numbers I may want to know what deviations from "best" practice I can expect.” Because if you let your customers “opt in” instead of urging them to update, some will never opt in, given they’re not even ready to care about cyber security.
The data for locales like French tends to have been very stable for decades. Changes to data for major locales like that are more disruptive than to newer emerging markets where the data is undergoing more churn.
Happy for them. Ironically the old wealthy markets are digging the trap they’ll be caught in, instead of investing in cybersecurity. Best wishes, Marcel