The future is now
The future is now
The future is now
Translation of developer utilities themselves is the final layer of hell. I'm not hearing anybody out about this kinda stuff - after microsoft decided to TRANSLATE THE EXCEPTION MESSAGES IN .NET WITH NO WAY TO BYPASS IT making them unclear, unusable and ungoogleable, I realized what a terrible idea it is to fragment developer knowledge by language.
Let's just stick to a lingua franca, please.
That's why I always select "English (US)" when installing an OS or creating an account online. No bad or missing translation, no mangled UI because of longer words, and of course easily searchable error messages.
Yeah the only drawbacks is I later have trouble giving remote support to family members because their shit is in another language so I don't know what does the option specifically say hahaha
Yeah, that's why unlocalize.com exists (or... existed? Dunno, seems down from here!) Or you can have used the official Microsoft Language Portal... until they removed it and replaced it with the worse https://learn.microsoft.com/en-us/globalization/reference/microsoft-language-resources (but it's still usable, I guess...)
It's not down for me
I hope this is a joke because the Arabic translation is so wrong. It's also confusing because Arabic is written from right to left so it'll just create a mess. The translators are using "letter case" and translated it literally to Arabic. The word used doesn't mean "letter" as in a letter in the alphabet but "letter" as in what you send in the post office. These are totally different words in Arabic.
Spanish is also wrong, this one means "ignore-letter-size". I'm not sure if there is an official correct way to say in a short manner, I would say "ignorar-capitalizacion" but I think it's just a barbarism.
Ber ber ber ber ber ber ber ber
Also why did they use Arabic script for the Arabic but not hiragana/kanji for the Japanese?
Just curious, what would be a correct translation?
It's somewhat difficult to translate, because Arabic doesn't have the concept of case in letters. Usually you can use "حروف صغيرة” or ”حروف كبيرة" which literally translates as "small letters" and "big letters" when referencing other languages. For the general "letter case" you can use "حالة الأحرف". So it'll be something like : تجاهل حالة الأحرف.
So here you substitute الرسالة for the correct word الأحرف to mean "letters"
grep --groß--und-kleinschreibung-der-buchstaben-ignorieren
grep --Groß--und-Kleinschreibung-der-Buchstaben-ignorieren
But you just told the computer to ignore case...
This reminds me of a similar experience.
The first release of WSL(2) 1.0 (this versioning alone is worth another post here, but let's not talk about it) have its CLI --help
message machine translated in some languages.
That's already evil enough, but the real problem is that they've blindly fed the whole message into the translator, so every line and word is translated, including the command's flag names.
So if you're Chinese, Japanese or French, you will have to guess what's the corresponding flag names in English in order to get anything working.
And as I've said it's machine translated so every word is. darn. inaccurate. How am I supposed to know that "--分布" is actually "--distribution"? It's "发行版" in Chinese and "ディストリビューション" in Japanese.
At last I had to switch my system language to English to set a WSL instance up. From then on I never use any display language other than English for Microsoft products. Sometimes "translated" is worse than raw text in its original language.
Related links if you like to see people suffer:
https://github.com/microsoft/WSL/issues/7868
https://github.com/microsoft/WSL/issues/4111
PS: for the original post, my stance is "please don't make your software interface different for different languages". It's the exact opposite of the author has claimed: it breaks the already formed connection by making people's commands different.
It's the CLI equivalence of scrambling every button to make sure they are placed differently in different languages in GUI. I hope this sounds stupid enough so that no one will try it.
A not-so-stupid way that I can think of is to add a "translation" subcommand to the app that given any supported flags in any language it converts them to the user's language. Which is still not so useful and is not any better than a properly translated documentation, anyway.
Try using Excel in another language than English. You have to hope someone, that speaks your language had exactly the same problem as you, because all the formulas get translated and Excel doesn't recognize the English version when your language isn't set to English.
God. Damnit.
This is so bullshit that EVERY major datasheet application works the same way. Google Sheets, Microsoft Excel, LibreOffice Calc...
All of them have their functions translated and it makes me have to search for tables of equivalency between them. Fuck that.
Oh god the fucking Excel formulas.
I live in Quebec, and all the excels are in French.
I've learned excel in middle and high school in my native language, I absolutely fucking hate the translations... excel-translator.de coming in clutch.
Just wait until you're working with different time/date formats, like, god forbid, sharing such documents to someone who has their Windows time/date format set differently than you have.
So true... Not only sometimes it makes it hard to find the translated function name (especially since they are adding a lot of new functions) but there are quite often longer... For instance in French you go to a simple ifs to si.conditions...
The Microsoft Office installer has translated "Office downloads" (as in office is downloading now) to the plural form in Swedish, so it reads grammatically incorrectly as if there's multiple downloads going on. Very professional, lmao
tar -xvzf (but in German)
tar --extrahieren --volle-ausgabe --gezippt --folgende-datei
tar --auspacken --volle-ausgabe --reissverschlussverschlossen --folgende-datei
you have concisely convinced me how terrible an idea this is.
Would it be less awful if the single letter switches were universal and didn't change between locales?
Hungary presents: grep --kis--és-nagybetűk-figyelmen-kívül-hagyása
Yeah that is a resounding no. PS: I am not exaggerating. That is the first translation that came into mind
If you reword it a little, it will be shorter: grep --kassza-szenzitív-abc-nem
(/j)
This looks like the final layer of hell. Your coworker writes their scripts in another language and now you have to decipher what the hell they mean. Who has a problem woth English for development tools, etc.? It's really not a monumental task to learn it, and I'm not even a native speaker.
May I introduce you to the concept of Microsoft Excel?
One time, someone from HR asked me, if I could help them with an Excel formula. So, I quickly looked up how to do something like that in Excel, adapted it as needed on my laptop, then sent it to them. And well, it didn't work on their system, because I coded it in English, whereas their OS was in German.
Yep, this sort of behaviour translates to Windows paths also. Why would they name a directory "C:\Users\Example\Desktop", when they can replace "Desktop" with a locale-specific name, which is not just a link to "Desktop", but a completely different directory which breaks any scripts expecting "Desktop".
We know MS well, their choice is clear :)
FUCK whoever thought translating Excel formulas was a good idea. It is the most infuriating shit. Everything I learnt in English is now useless, without googling every fucking function every single time. Fucking idiots.
To be fair, sometimes I look at my own code and think it was done in another language, and I only know English.
The 3 AM programming syndrome. I know it very well :D
I’ve never met this man in my life.
Even if everyone is using English, there will be cultural differences. I used to work at a company which had a lot of indian externals working on their code base. Whenever I had to work on a mainly Indian developed project i had to get used to how they wrote things. Usually things where named a bit different. Not by much, but enough tho throw me off a couple of times before i got used to it.
IMPORTANT: I am not shitting on how they used English, merely pointing out that they used it differently from how i would have expected.
In this case they were still using English, with minor differences. Imagine one of the Indian externals writing an internal script that utilizes the Indian localisation. You'd have to whip out a translator or dive into the docs for a tool which you may have already used countless times and know how it works when instead, they could have simply learned the English arguments for the tool.
Nothing against people not being native speakers of English, I'm not one either. I just think that this creates more problems than it solves.
You don't even have to learn English, you just memorize a few flags/keywords, no complex grammar or anything.
Wouldn't it be easy to convert the code to any language if this was the case though? Any human-language programming is already an abstraction, so why can't a programming language be abstracted to more than one human language? Literally just swap the command words out for words in the other language, seems like something modern IDEs can trivially do if a language like that existed.
Also, non-English speaking countries exist. Some have actually developed programming languages in their own language so the idea of non-English programming isn't exactly unheard of. There is no reason that code that won't be edited by English speakers should always be written in English, it's not like it's the one perfect human language for interfacing with computers or anything. So I suspect that should this become a reality, you wouldn't even notice anything's changed unless you live in a non-English speaking country. Either way your company can still always just require code to be in English, the same way companies have requirements for formatting and software design philosophies.
Not particularly, because compilers rely on very explicit syntax to parse. And languages are all structured very differently grammatically speaking.
All code should be written in Esperanto, the international auxillary language!
I don't get it. Is the joke that i18n for CLIs is unimportant? Or is this an earnest post that just so happened to get posted under humor? I wish I had the source for the image.
The joke is that it's hard to tell if this is a joke because the lines between good intentions, corporate jargon, and feasibility have been blurred beyond recognition both here and in the real world.
It's also funny that after all these years, i18n is still a mess. Moreover, even if translations are standard in GUIs and documentation, for some reason, everyone is okay with defaulting to English for the oldest form of computer interaction.
Also, the joke is whatever you want it to be. Follow your dreams.
that's because as a non-english native, it's WAY easier to have the whole computer in english. obscuring options and error messages (by translating them) makes it much harder to fix problems.
So this is not a joke, it’s a gripe
It's not funny because i18n is anything but. Don't divide people, unite them.
o.O And I thought translated errors without error codes were the worst cancer in IT world, now you created an IT covid.
I have to use a German API with weird halftranslations and ultra long names, due to bad model generation. Something like getPersonAntragsPersonAdressDetailEintragList().
Unfortunately, it makes sense, since many of the terms have a very precise legal meaning and can't be unambiguously translated.
IT bubonic plague
The future of the past issues MS had with this shit? Oh, right, programmerhumor.
I'm OOTL. Story time?
Critical security hole a few months before was due to localized variables. And again and again in the past. Aside from countless other issues with batch and powershell scripts because of localized variables.
Ah yes can't wait to switch keyboard layout mid-command every time, so nice!
Too half-arsed.
For one, grep
isn't translated. But more importantly, you have to use the english --use-locale
-option to set it. Pah!
Interesting choice to romanize Japanese. Now you have to figure out which romanization system to use (I was surprised を was romanized as o
and not wo
). But I do get it, I guess, because you have to wonder it would only use Hiragana or mix Kanji in:
Well, for the sake of being international, we should just use Katakana everywhere. That's the sanest suggestion (who's with me?):
Of course, you're kind of screwed on a TTY, since they don't generally render unicode...so let's go back to figuring out which romanization system to use.
Agreed シ
I don't know what that symbol means, but I've always liked how it looks like a smiley face.
Why is the third one not:
undefined
--大文字-と-小文字-を-無視する
?
Because they didn't think it out fully lol
There shouldn't even be dashes imo since they replace spaces and Japanese doesn't use spaces.
This might be an old April first joke because I couldn't find anything about it lol
Really ducking hope so. I hate translated software to my native language.
My blood boiled there. Like excel that has functions in all languages. Completely insane.
Yeah, this is one of those things which sounds great on paper but also introduces problems. I've seen people get really annoyed when exception messages are translated because it makes them harder to search for online. That would need to be solved too.
I've had huge issues collaborating on a spreadsheet with a Spanish client. It tries to open the sheet in your locale and then can't find the functions. Insane that Microsoft didn't even add some metadata to allow me to work on it in Spanish.
Or… maybe it’s language that is wrong
we should all standardize on Esperanto. Not because it is good, but because regardless of which language you know, Esperanto is the last choice, and thus the only equal choice.
Like enforcing that the toilet lid stays down at all times to be "fair" to everyone
I need this in my life
Bro are you okay
Sì
Excel does this, so that German guy you forwarded a sheet to has to manually replace all the Polish function names before it works
Why though