Hacker News new | ask | show | jobs
by cryptonector 2208 days ago
How do you deal with programming languages' being so based on English?
3 comments

The languages themselves are no problem, you already use non-English for important programming constructs without thinking about it like !, ||, &&, etc., and have to explain their function in English upon first encounter.

CJK have different strategies for localizing technical terms. I don't know about Korean, but Japanese tends toward transliterating English terms whereas comparatively Chinese tends toward inventing calques.

I am a (non-native) Mandarin Chinese speaker, and I'm essentially unable to have the most basic conversation about programming. No terms that I'm aware of are phonetic transfers (Chinese does that occasionally, but not often), they're all new terms, and I can't formulate a single sentence without having to look everything up. It's like having to relearn the language -- very frustrating!

(Not saying they should be doing it this way -- in a way I'm glad they are.)

In terms of general science and technology I find the Mandarin names more illuminating. English technical vocabulary tends toward coinages from Latin and Greek roots that obscures their intuitive meaning to high schoolers. e.g. the word "commutative property" in Mandarin is a plain-language "exchange rule", with no appeal to classical vocabulary.
To be fair, most of those "obscure" coinages in English were not so obscure when they were coined. Until rather recently, members of "academic society" were expected to know some degree of Latin and Greek.
I do not see programming language as English. Sure it may use alphabet and borrow some english word but to me it still hardly english.
Sure, but there's quite a few keywords in English. And then there are so many APIs and so much source code with symbols that consist of English words.
> I do not see programming language as English. Sure it may use alphabet and borrow some english word but to me it still hardly english.

Assembly language was invented and created in english to make it easier for english speaking developers to program. Nobody wants to program machine code.

Then higher level languages were invented to make it easier for english speaking developers to program. Nobody wants to write assembly code.

If java, javascript, C#, C, C++, etc aren't english language programming languages, then what language is it? Spanish? Japanese? Swedish?

>If java, javascript, C#, C, C++, etc aren't english language programming languages, then what language is it?

What languages? Its a language in its own right. Its a programming language. Specifically java, javascript, C#, C, C++ language.

You are being deceptive here. The original point is "How do you deal with programming languages' being so based on English?"

Nobody is saying that C or C# is the english language. Of course C and C# are programming languages. You aren't saying anything of importance here. But it is based on the english language using english words to help english speakers write programs.

I already gave you the history of the development of computer programming languages.

"Assembly language was invented and created in english to make it easier for english speaking developers to program. Nobody wants to program machine code.

Then higher level languages were invented to make it easier for english speaking developers to program. Nobody wants to write assembly code."

If you disagree then go read the AT&T or Intel manuals and tell me what language the syntax was written in. Go read the C grammar/syntax or the standard library, what natural language are they written in?

Chinese? Russian? Swedish?

(In Japanese) For beginners to medium level programmers, there are more than enough learning materials (online, books) in the language. We also have the Japanese words for most of CS terms such as object-oriented programming.
AFAIK the Japanese term for object-oriented programming is オブジェクト指向プログラミング (object shikou programming). They only translated the "oriented" part, which is a very generic term and not by any means technical.