日本では文系理系と分かれていて、文系の人はエンジニアにならない人がやはり多い。
しかし、実はプログラミングは英語を知っている人の方が習得が早いことが分かっている。
今日はなぜ英語を学習している人がプログラミングを学ぶ上で有利なのかを説明していきます。
プログラミングは英語で書く
当然のことだが、プログラミング言語の全ては英単語で構成される。
実際にこの点だけでも、英語を習得している人は有利だ。
Stringが文字列と聞けば、それが文字を連ねたかたまりだと分かるし、classと聞けば、それが何らかのルールに従って定義された1つの分類だということを感覚的に理解することが出来てしまう。
通常の日本人では残念ながら、classを学校のクラスや授業のクラスのような捉え方しかできないし、ましてやStringなんて聞いたことがない。
初期段階でプログラムを理解するだけでも、やはり英語は有利だ。
べテラン程、英語が必要
プログラミングをある程度理解出来たら、英語の習熟度で差が出ないのではないかと思われるが、そんなことはない。
例えば、新しくライブラリを学ぶときはどうだろう。
日本語のリファレンスがあるものもあるが、多くのものは英語での説明が多い。
もちろん、簡単なライブラリであれば問題ないが、複雑になればそうもいかない。
複雑になれば、自分で幾分かサンプルコードを打ったりして確かめなければならない。
しかし、英語を感覚的に理解している人は説明文である程度何が実現できるライブラリかを理解できる。
一度、日本語に訳してから理解をするプロセスを行うと、どうしても本質を見失いがちだ。
これは言語に限った話ではないですよね。伝言ゲームのようなもの。
日本では英語が話せてプログラミングが出来る人は少ないが、英語が話せる人こそプログラマー向きだ。
日本語リファレンスが正しいとは限らない
私はリファレンスを参照する時は出来るだけ英語のものを見ています。
やはり、英語のものを見た後に日本語に翻訳されたものを見ると若干解釈が違っているものがあります。
翻訳している人がエンジニアであるとは限らないからです。
非エンジニアとなると、専門用語が出てきたら結局直訳しているのと同じになってしまう。
日本語のリファレンスはもちろん正しいものが多いが複雑性や専門性が高くなると、信頼度はさがってしまう。
まとめ
プログラミングを今学んでいる人は、出てくる単語の意味を辞書で引くことが理解の手助けになるはずだ。
今英語を理解出来ていなくても、辞書で引きながら単語の意味の本質を掴むことでプログラム作成の手助けになるだろう。
自動翻訳が完成して、スピーキングやヒアリングで英語を話せる必要がなくなっても、プラグラミングは英語のままだ。
プログラミングを学び続ける人は英語を学び続ける必要がある。