日本のプログラマーにとって英語スキルが重要かどうかに関する一考察/How important it is to have good english skills for Japanese Programmers?

FBよりの転載です。

Facebook のプログラミング教育グループでの質問に対して、私が個人的に考えていたことを回答という形でまとめました。
せっかくなのでこちらに転載することで公開したいと思います(英語ですが機会を見て日本語に翻訳したいと思います)。

https://www.facebook.com/groups/edu.programming/?ref=bookmarks

Question: How important is having a good command of English to coding?
質問:日本でプログラマーとし活躍する為には英語力はどれでけ重要・大事?

There are couples of points to mention.
There are some types of information source where JP programmers refer to when they need to know/learn/search something regards to programming, such as1. Books/Magazines,
2. Q&A or/and discussion sites(incl BBS, Mailing lists, Google Groups)
3. Tech News, Blogs(incl blog/article publishing platforms, like Hatena Blog, Qiita)
4. General purpose communication sites incl SNS (Facebook, twitter, etc)

1. Books/Magazines
There are plenty of books and magazines written in Japanese. So the number/quantity perspective, I can say there are good enough amount of books/magazines available. But from quality perspective, there is a problem. JP tech books are mostly written for beginner/entry/novice developers, or intermediate at best. Very few are written for expert level developers. Most of books targets for expert level developers are translated from English books. One of the reasons of this is that expert books do not sell much, compared to entry level books. But yes, they can get expert level books written in Japanese, even most of them are translated ones.

Magazines, on the other hand, are good in quality, but they do not sell much, so very expensive compared to those sold in US.
Both tech books and magazines do not sell much in Japan compared to those numbers when in 1990s, but AFAIK the number of tech books written in Japanese(and sold in Japan) are far higher than those numbers in China or Korea written in Chinese, Korean.
Per my Korean and Chinese ex colleagues when I was working for Sun Microsystems, and Google, they tend to buy and read English tech books than to buy and read those written in their language, simply because they are not available.

In short, JP programmers can buy/obtain good enough amount of information only from books and magazines in Japanese, and there is not much needs for them to buy English tech books/magazines.

2. Q&A or/and discussion sites(incl BBS, Mailing lists, Google Groups, topic based chat channels, e.g. IRC/Slack)

Some of Q&A/discussion sites I know of are, teratail, Yahoo 知恵袋(Yahoo Q&A in JP), 2ちゃんねる(2ch), etc.

They are moderately active, but it is sometimes hard to get good answer(s) in a timely fashion.

Usenet and Mailing lists(or Google Groups) were widely used in Japan in 1990s, but not much now, AFAIK.
In this SNS age, it looks like developers tend not to ask questions, but search for Google first, since they can get answer(s) to their question by doing so most of the cases.
Only in the rest of the cases, they ask in Twitter/Facebook, and a public Q&A Sites.

Anyway, those JP Q&A and discussion sites are moderately active, and good source of information, but not good enough compared to English corresponding ones.So those developers who can (hardly)read English may rely on English sites, esp SO.
Not many are using reddit, or/and Quora AFAIK.

A good thing is that, there are some (on-the-fly) translation systems like, Google translation, which translates English web page(Q&A) to Japanese. So those who are not good at reading English tend to make use of such translation tools and read English sites.

Until recently, Google translation (and some others) quality (from En to Ja) are not that good, it sometimes hard for them to get precise meaning of what written in web pages. But fortunately, it is a programming questions including Programming source code fragments, they can get good touch of it even from poor translations.

So in short, and here again, they can get some answers to their question without reading/relying on English sites(w/o translation).

3. Tech News, Blogs(incl blog/article publishing platforms, like Hatena Blog, Qiita)

This is one of the most used/referred media for JP developers, I think.
If I have a programming question and try to Google it(in Japanese), I get most of the top results from those sites in this area, meaning that not from Q&A sites, but Qiita, Hatena Blogs, and professional tech news articles.
When I do the same in English, I get SO pages at the top of Google result page.

It is worth to mention, that Qiita is one of the programmer’s best information source in JP, and most of Google’d tech/programming questions can be answered by it, but they have some problems too.

The problem is that there are so many novice level, poor quality articles in Qiita, and it makes people to have hard time to get right answer to their question from Google’d resulting Qiita pages.

I personally get rid of Japanese answer from Google result, not to waste time for this reason.

It is okay, since most of authors are amateur/non-professional article writers meaning that they do not earn money from writing it, but it is a problem for some people anyway.

I guess it is by their(Qiita’s) intention to allow(not to down vote/credit) novice writers write novice articles. By doing so, by letting people feel easier and willing to write articles, (and not get down votes) , they have more articles in their site, and in the end it will help users/reader developers to get answers to their question from inside Qiita.

Stack Overflow, on the other hand, they have a credit system, which makes users to down vote to poor quality questions and answers, so poor content get less chance to be read, that is not the case with Qiita, they only have up-vote(+1).

As you might already be familiar with it, Japanese culture and Japanese people are considered to be modest, and not liking speak bad of someone, and even someone’s opinion even they think the opinion is wrong or poor.

From this cultural reason, people tend to avoid down grade(-1) to other’s opinion/articles/answers.

Aside from this article(Google’d result) quality issue, yes Japanese developers can get good amount of information from those sites, without reading English pages.

4. General purpose communication sites incl SNS (Facebook, twitter, etc)

This highly depends on the connections/friends of one’s, but many questions are asked and answers in Japanese, meaning that this is one of good sources of information for many developers too.

To summarize, It can be said that Japanese developers can get good amount of information only from Japanese sources.

But also, those expert level developers may sometimes have hard time getting right answers from Japanese sources, and go for English ones.

This is one of the reasons, some people say “expert level developers are, to some degree, able to read English”.

So, in my opinion, it is not much important for (esp novice level) developers to have skill to read english, compared to those developers in other countries, because we have so many good Japanese information sources.

When the one gets more experiences and reach to higher levels, they tend to feel the needs of English reading/writing skills.
But they can live without it, anyway.

If they really feel the need of referring to English source, they can use translation tools.

This is an off-topic answers to your question, but something I’d like to add.

I spend some of my weekend time(as a volunteer) for teaching computer programming to elementary to high school students.

Since most of the programming languages are English based, so for those learners have hard time reading/writing a code in English.
This is true especially when a learner’s age is low, like 6-8(or even lower), since they may not have learned alphabet characters, yet.

Even if they know alphabet characters, they may not know the meaning and pronouciation of words, like “function, if, while, each, case” etc, which makes it harder for them to learn programming.

For this reason, it is the hardest to learn real programming languages(C, Java, Python, etc) for kids/students, then Visual (GUI based but labeled in English )programming languages (like Scratch), then Visual with no label programming languages(like Scratch Jr)

There are some Japanese based programming languages, but they are not so popular, yet.

Actually, I have a feeling that it is fun learning programming for most of kids, they manage to handle this English problem, anyway, and concur.

This is the power of “fun of learning programming” 🙂

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s