英語とプログラミング
英語とプログラミングについては、
- 英語とプログラミング、どちらを学ぼうか迷っている
- 英語が一番、プログラミングは必要ない
- プログラミングを日本で学ぶ上で、英語は必要ない
- 英語もプログラミングも必要な気がする
など、色々な考え方があります。
今日は、
どちらも有用で、互いに関係があるので、両方学ぶと良いのでは
という話です。
主にプログラミング学習から見た英語という面で
- プログラミング言語そのものが英語ベース
- プログラミングのためのコミュニティの多くで英語が使われている
という2点から、理由を説明します。
- こんな考え方もあるのか
- 言われてみれば
など、何か気づきやポジティブな発見があるかもしれません。
プログラミング言語と自然言語
英語とプログラミングの関係ですが、
まず、
基本的にプログラミング言語は英語がベースとなっている
ということに気がつきます。
無数にあるプログラミング言語の中には、英語をベースとしていないものもあります。
日本語ベースのものでは、
などがあります。
しかし、プログラミング言語全体を見渡せば、多くのプログラミング言語は英語がベースとなっています。
これは、有名なプログラミング言語であるRuby、Luaにおいて、それぞれの生みの親である、まつもとゆきひろ氏、Roberto Ierusalimschy氏が母国語ベースの言語ではなく英語ベースの言語としてこれらをリリースしたことからも良くわかります。
Roberto Ierusalimschy氏は、ブラジル人のコンピュータ科学者です。
プログラミング言語の起源は古くまでさかのぼるとされていますが、現在使われている形のプログラミング言語に大きな影響を及ぼしたのは、1940年代以降の戦中、戦後の研究開発と言われています。当時開発が盛んだったアメリカとイギリスの流れを組んで、現在主流のプログラミング言語が存在しています。
機械に指示を出すためのプログラミング言語は、英語や日本語のような自然言語とは異なるものの、プログラマが理解しやすいように、自然言語が意識されています。
プログラマ=人間が理解しやすいような工夫として、数式や論理式をうまく取り入れる方式のプログラミング言語もあります。これらの、自然言語、数式、論理式などを活用した人間が理解しやすい形のプログラミング言語は高水準言語と呼ばれます。
いずれにせよ結果として、個別のプログラミング言語ごとに差はあれど、多少はアメリカやイギリスの自然言語である英語の影響を受けています。
プログラミング言語を学び始めると1日目に出会う可能性のある用語の多くが英語由来である、ということも起こりえます。
- if
- True / False
などですね。このような用語がプログラミング学習を続けて行くと、積み重なっていきます。
多くのプログラミング言語で、色々と便利な機能を使おうと思うと、英語の理解ができると学習がスムーズになります。
基本的には、プログラミング言語は英語の理解を前提としている
と言ってもいいくらいだと思います。
そうは言っても、翻訳後の母国語やGoogle翻訳に頼ればいいのではないか。
という意見が聞こえてきそうです。
そうだと思います。
翻訳されたリソースやGoogle翻訳を活用することはとても重要です。
ここで大切なのは、それらの手段を活用しても、本質的には英語ベースのプログラミング言語を学習している、という意識だと思います。
- 翻訳された情報
- Google翻訳
- 英語での情報
をうまく組み合わせて使っていくことが大切です。
そして少しずつ、英語での情報を活用できる割合を多くしていくイメージです。
英語を自力で活用できるようになればなるほど、プログラミング学習の効率は上がっていくと思います。
プログラミングのコミュニティと英語
次は、
プログラミングのコミュニティでは英語でコミュニケーションを取る
ということです。
1つ目とも関係しますが、コミュニケーションに英語を用います。
- 航空業界 (パイロット)
- 学術 (研究者)
など、他にも共通語として英語を採用している業界は多いと思います。
プログラミングのコミュニティでも同様です。
そうは言っても、日本では日本語だけでいいのでは
という疑問が湧いてきそうです。
それが、そうでもないのです。
近年の世界中へのインターネットの普及により、
コミュニティは、必ずしも物理的に同じ空間を共有する必要がなくなりました。
2020年の状況を踏まえると、コミュニティのオンライン化は今後ますます加速すると思います。
そうなると、日本にいる、ブラジルにいる、という物理的な場所はあまり重要ではなくなります。
- オンラインカンファレンス
- オンラインミートアップ
- インターネットのQ&Aサイト
- オープンソースプロジェクト
など様々な場面でコミュニケーションに英語が使われます。
英語が流暢である必要はありません。
コミュニケーションを取るために英語を使う
というスタンスが大切、ということが言われています。
実際に、英語を使う人の中で、英語が母国語の人よりも母国語ではない人の方が多いと言われています。
多くの人が、母国語ではない英語でコミュニケーションを取っています。
プログラミングの世界は、変化が激しいと言われています。日々新しい技術が登場します。
それらをキャッチアップして、世界中の人とコミュニケーションを取るのに英語はとても便利です。
英語とプログラミングは広い世界で使える
英語とプログラミングの関係について、
- そもそもの出自に英語が関係している
- プログラミングのコミュニティの多くで英語が使われている
という点から見てきました。
プログラミングでは技術力が全てだ。英語は必要ない。
という意見があるかもしれません。
それでも、その「技術力」には英語が含まれると思います。
エラーを解消するために、インターネットで解決策を検索していて、
英語のページを一切読まない
よりも、
(時にはGoogle翻訳に頼りつつ)自分に有用な情報かどうか確認する。
というスタンスが大切です。
英語とプログラミングは切っても切れない関係にあります。
- 有用な英語情報
- 興味が湧く英語のオンラインコミュニティ
はたくさんあります。
英語とプログラミングを活用しつつ、広い世界を楽しみましょう!
コメント