2011-04-28

Japanese programmers don't know English

"Japanese programmers don't know English."

This is a fact. Sure, there are few exceptions. But I can safely say almost all Japanese programmers don't know English.

Why is it? Why we don't know English? How could that even be possible? How can we learn programming without knowing any English.

Why? Because we don't need to. How? Because there are enough Japanese translations.

In the world of programming, English is the first class citizen. Any other languages are secondary. I don't argue with that. It's a fact.

But we have translations. Almost all English programming books are translated to Japanese. It's not just books. Standards, documents and every interesting text in the internet are translated to Japanese. If you google for it. There is a high chance it has been already translated by man(not machine).

Because of this, we don't need to learn English just to learn programming. Of course, if one want to be the best programmer, he or she still have to learn English. But you don't need to be the best programmer. Actually, you can't be the best programmer. It's a simple fact that you can't master all. There is always better programmer than you for some domains. What we need is good programmers. Because we have enough Japanese translations, we can learn most of the stuff in Japanese.

Now, you may wonder like this. "But programming language is based on English. Writing a code means writing an English. same applies for reading. isn't it?"

That's not what we do. We are dealing with programming language, not English. When we read fopen, we don't think "It's a function which open a file". We think ファイルを開く関数(a function which opens a file). We don't recognize f stands for file and open means, well "open". We think "fopen" as some kind of identifier and whatever that means it opens a file in Japanese. Likewise, when we write variable name such as file, we don't recognize it as "file". We think ファイル(file).

It's just same you guys use Japanese words like samurai, ninja and hentai without understanding its true meaning. Just because you use these words doesn't mean you understand Japanese. You don't even know what it really means. Most samurais were doing boring jobs that is equivalent to current office job. Reading, Writing and computing. Ninja doesn't ware black clothes and they weren't super athletes. They were spys. Their job was same with modern spy. Obtaining informations and propaganda. Hentai does NOT mean porn anime and manga. It's more generic word. It may be translated to naughty or dirty.

Japan is a interesting country. In 1867, Edo bakufu(a feudal government at that time, they banned forign culture Sakoku) gave up and returned its rights to the Tenno(They got rights to govern the Japan in 1603 from Tenno.) After that, we were eager to learn western knowledge. We built many western style buildings made by bricks(most western style buildings were destoryed by earthquake, notably 1923 Great Kantō earthquake. Earthquake is the reason our ancestor never built a house made by brick.)

Well, enough of history. The point is, many western technologies were far superior than ours at that time. We had to learn fast to keep up with them. Or else, we ended up to be invaded and become a colony of western countries. We had to avoid that. The only way to prevent that is learn.

In order to learn western knowledge, it's obvious we need to read western languages. Of course, the smartest people learned it. The most interesting thing is they translated it to Japanese. So all Japanese could read it. Did you know that the Japan's literacy rate was really high even at that time. I think we made so many translation because of the high literacy rate. If literacy rate was low, we didn't need to translate it to our language.

Even today, we translate most of the forign books. I think the biggest reason Japanese can't use English is, just because we don't need to. We have translations. That's enough for becoming a good programmer.

I don't know how long we can keep doing this. We need a common language and English is the best candidate whether we like it or not. Eventually, minor languages will slowly fade away. I think Japanese language survives. Well at least I hope so.

4 comments:

Anonymous said...

I don't know how long we can keep doing this. We need a common language and English is the best candidate whether we like it or not. Eventually, minor languages will slowly fade away. I think Japanese language survives. Well at least I hope so.


This is very good point that you had missed all over discussions there. And still you write it down.

Yes, English as basic language is the best candidate for localization
as it makes it easier to adopt the
software.

If you write

MessageBox(translate(L"平和"))

And it would not appear in the translation dictionary 99% of users will not be able what does this stage icon means...

While when you write:

MessageBox(translate(L"Peace"))

90% of users all over the world of
the program will understand it...

So if you developing a software that
is going to be used all over the world... Do yourself a favor and don't let your programmers to write Japanese in the code.

And you know what?

I really hope English and English culture will not destroy all local cultures like Japanese or Hebrew.

Artyom

江添亮 said...

Japanese never give up Japanese language.
Almost all English programming books are translated to Japanese.
And of course many Japanese write programming book in Japanese too.

Does Hebrew has that many translations?

Anonymous said...

"Japanese programmers don't know English"
of couarse they know about English, just you dont know how to use engrish.

Anonymous said...

I happened to reach your blog after googling to get some benefits.
At first glance, I've supposed there are several words mistook as sentences, often these are related to plural things. You'd better check the followings.

It's not just in the books.
documents and every interesting texts
What we need are good programmers.
It's not what we do.
We deal with programming languages in Japanese, not in English.
"It's a function which opens a file"
We think it ファイルを開く関数
We think "fopen" as a kind of identifier
they banned foreign culture Sakoku
many western technologies were far superior to ours at that time.
The only way to prevent that is to learn.

I'm not a native speaker either, as you have guessed.
Japanese including me cannot handle English well, but English does us, since English is the basic language in today's world, especially in computing.
I felt this post is a mass of inferiority complex and justification you couldn't do well, while contains boasts to Japanese who cannot use at all.
It's a shame article for foreign programmers.