this post was submitted on 19 Feb 2025
835 points (99.2% liked)
Programmer Humor
20735 readers
1983 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I know this is a joke but it's still wild to me that programming languages aren't localised.
The VBA part of the meme is real, VBA is (was?) localized. Turns out it's a horrible idea: some keywords are badly translated, some are not translated at all. Googling localized error messages is useless, so you need to guess the original error message from the translation. Want to copy/paste a function from SO? Not so fast, you need to translate the keywords first! And the variable names as well while you're at it.
Ironically, you end up spending a lot of time on translation-related issues. I've worked on a french-VBA app, and it was a miserable experience (well, even more miserable than english VBA).
Yeah, one time I helped out an HR person with an Excel formula. It took like 5 minutes to write the formula on my laptop. Then I sent it to them and it took another 5 minutes to translate it into the local language...
Want to make my job harder? Because that's how you make my job harder.
I guess it would make it way more complicated to use other peoples code if that where the case.
You think that about math not being localized too?
There are some local differences in math notation, e.g.
.
vs.,
as a decimal separator,•
vs.×
for multiplication,:
vs÷
for division et cetera.Technically math is localised, especially in places that don't use the western alphabet.
Industrial controls equipment made by German companies can be programmed in English or German. You can also switch languages (German/English) at any time and the IDE switches over all the keywords.
What are you talking about? That must be some super niche use case, cause most IDEs do not do that. And if they do it's exclusively used by people who can't really program.
Lots of the industrial programming languages are very different to "normal"/"proper" programming languages, and I can see them being localised.
For example, this is (PLC programming language) Ladder Logic code:
My dad used that a lot to program Siemens Step5 and Step7 PLCs. I think it was German but names were 8 chars since this was straight from the 80s. When he fixed old machines or updated them with new PLCs he had to do full rewrites a few times because nothing was documented in old school machinery.
If he worked in Germany, did he use English or German mnemonics?
It did depend a little bit, what kind of machine/production line he was working on. Before he retired, he worked for an automation engineering company and had different projects in other EU countries, and tried to be understandable for people in those places. He once even coded some Siemens control panel for an aluminum oven loading robot in the czech republic and tried to translate everything to czech with a dictionary (to have the panel info available in czech,english and German). He did of course speak to the foreman of the workers to get it correct.
That makes sense. I’m also involved in localization efforts. In niche cases, it’s paid off to work with the clients directly on that. You get you a good balance between correctness and day-to-day usefulness.
If he worked in Germany, did he use English or German mnemonics?
The language is entirely in English. Only the comments and values are in Portuguese.
Since ladder is mostly diagram-based it almost doesn’t need to be localized and isn’t jarring when you use non-English variable and function names with English keywords.
Apart from being strictly left-to-right.
If you think it's jarring to mix names from different languages with English keywords... well, I have bad news for you.
Spacing constraints led to accidental French in "Reset_Contage~~m~~"
Considering that using a keyword to name anything results in compiler (or worse! Interpreter) errors, and that libraries are a thing. And also that copy-pasting code from the internet is a thing. I don't think it would be a good idea to localize programming languages.