Horse of a Different Colour

Intrepid J2EE nerd Charles Miller is annoyed with Apple’s USA-centrism, at least when it comes to spelling.[1] For the record, I’ve worked for three USA companies that had writers in the UK… and I have to say that I have always taken great pleasure in pointing out to my colleagues across the pond that in this company we’re standardized on U.S. English, and by the way, that’s “standardized“, not “standardised”…

Well, of course I’m kidding. I’m actually very nice when I’m editing.

No, I’m not.

On a related matter, I’ve always wondered about the Anglo-centrism of computer languages. Consider the case of a non-English-speaking developer who’s starting to learn Java. The reserved words (“if”, “else”, “for”, “this”, …) are in English, which almost certainly results in annoying overhead. To make matters worse for our developer, all of the standard packages (and most 3rd-party packages) are in English too. If you speak English, you can often guess what a Java method call does — for example, HashMap.clear() probably, err, clears a hashmap. But if your sole language was French or Korean, you wouldn’t know what “clear” or “hashmap” were unless you had run across those words before (perhaps earlier in your career). In any case, your learning curve for Java or any other high-level language[2] would be steeper than than a native English speaker’s. And it would be even worse if you didn’t know the character set. Imagine as an English speaker, having to learn to code using Arabic or Japanese Kanji. What a pain that would be.

Of course, there’s no reason that you couldn’t have a development environment that allows you to code in your native language, and then automagically transforms the source into the associated English source code. That should be pretty straightforward for the basic language keywords and any standard libraries, anyway. I wonder if such a feature exists? Hmmm.

1. Having recently reinstalled my PowerBook’s operating system, I can also state for the record that Apple clearly favors Swedes over Norwegians. The Swedish localization files install before the Norwegian files, in blatant disregard for alphabetical order.

2. Except for UNIX shell scripting, which is gibberish in any language.

7 thoughts on “Horse of a Different Colour

  1. Hello Charles! May I humbly suggest another JSR-666 feature, in line with your “SMS spelling suggestion”? Smiley integration! For example, if the system throws an exception, instead of sending out a complex and annoying “NullPointerException blah blah blah” message, it could send out a simple, user-friendly frowny face, :-(. The wink operator ;-) would allow you to use individual deprecated methods without generating a complaint from the compiler. A gasp of horror, 8-O , would be shorthand for “import javax.ejb.*” And so on.

  2. JSR-666? There are some who consider Java a beastly language, and if that proposal goes in with its number intact, I guess it really would become the Language of the Beast.

    Evan, Java couldn’t use the :-( operator, as it is covered by a trademark held by Despair, Inc., and they’re not willing to let go. While they do have reasonable licensing terms, do we really need another encumbered standard?

    After such a silly reply as this, I do really need my sleep, these grave shifts are making me weird(er).

  3. At one time the AppleScript language supported “dialects” … the non-English ones were buggy and not used often (plus most of the various scripting extensions ever supported anything but English) and Apple dropped support for non-English AppleScript in Mac OS 8.5.

    Back when there were multiple dialects you could compile a script in English, then switch to French or whatever and decompile the script into that language. It was pretty cool.

  4. Heya Kelly. I didn’t know the frowny-face was encumbered by trademark… back to the drawing board, I guess. Sigh.

    Hi Tim! I had never heard of multilingual AppleScript… that’s pretty nifty. More importantly, may I just say — Woo hoo! Another Mudd blogger!

Comments are closed.