プログラミングに英語は必要か?【結論: 初心者はまずプログラミング&英語はやりながら】

プログラミングに英語は必要か? プログラミング
プログラミングに英語は必要か?

こんにちは。

この記事を読んでいるあなたは、

これからプログラマーを目指したい。だけど・・・
・英語が苦手だけど、大丈夫かな?
・求められる英語のレベルって、どのくらいだろう?
・どのような英語を勉強したらいいんだろう?

このように悩んでいるのではないでしょうか?

特に英語が苦手な人にとっては、英語が必要か?がプログラマーになって楽か?苦労するか?に直結する部分だと思うので、この悩みも非常によく分かります。

この記事を読んで分かること

この記事を読むことによって、

・プログラマーに英語が必要か?
・必要になるとすると、どのようなケースで必要になるのか?
・必要な英語のレベル

こういったものに関して、全体を理解することができます。

この先も読み進めていただき、英語が必要か・・・?という現実を知っていただければと思います。

結論

細かい内容に入る前に、まずは結論です。

[結論]エンジニアやプログラマーで英語が必要か?
(一般的な日本の会社において)
エンジニアやプログラマーになるにあたり、英語は、業務を阻害しない程度の必要最低限のレベルがあれば大丈夫です

もちろん英語力はあるに越したことはありませんが、なくても仕事をすることはできます。

これ以降、この結論の背景や理由を1つずつ説明していきます。

この記事の背景

僕が何故この記事が書けるのか?を簡単に紹介しておこうと思います。

僕は元々TOEICの点数が420点でした。
正直、英語力は全くといっていいほどありませんでした。

その状態で実際のエンジニアの業務を行っていたので、英語力がない状態でプログラミングの作業にどのくらい影響があるのか?どのような苦労があるのか?がよく分かっています。

この記事について

この記事は、以下の流れで説明してきます。

この記事の流れ
・プログラマーが英語を使う場合の紹介
・プログラマーが英語を使えるメリット
・どのくらいの現役プログラマー/エンジニアが英語を使えているのか?
・初心者からプログラマーやエンジニアになる際に満たしておくべき英語のレベル
・プログラマーやエンジニアが英語を覚える際の方針

それでは1つずつ、見ていきましょう!

プログラマーが英語を使う場合の紹介

プログラマーが英語を使う場合の紹介

それではまず、プログラマーが実際に英語を使うケースを紹介したいと思います。

具体的に、プログラマーが英語を使うのは大きく、以下の6つの場合に分類されます。

この6つは、以下のような構成になっています。

全てのプログラマーで英語が必要となるケース5つ
・1: プログラミングの変数名や関数名の定義する
・2: エラーが発生したときのメッセージを読む
・3: 何か問題がおき、その解決方法が日本語のサイトではなく、英語のサイトで探す
・4: APIドキュメントを読む
・5: その他海外の一次情報を調べる
一部の英語を使ったコミュニケーションをする人向け1つ
・6: 関係する日本人以外の人とやりとりをする

という構成になっています。

それでは、1つずつ内容を見ていきたいと思います。

1: プログラミングの変数名や関数名の定義する

タイトルのままですが、プログラミングは、変数や関数名を英語でつける必要があります。

もちろん言語により書き方は違うのですが、例えば、

let title = “xxxx”
String description = “xxxx” 

などです。

ここでいう、

title
description

という変数名は、自分で決めることになります。

この変数名やクラス名は、後から違う人が見たときに分かりやすいプログラムにするために非常に重要になります。

 現場でのレビューの却下
実際に現場でプログラムを書いているときも、この変数名の書き方が分かりづらいという理由で、レビューが却下になることもよくあります。

とはいえ、少人数や一人で開発をするプロジェクトだとそれほど厳密ではないので、それほど難しいものは使わなくても何とかなるケースが多いようです。

2: エラーが発生したときのメッセージを読む

特に初心者の頃はこの英語のエラーに苦しめられるのではないかと思います。

例えば、

Uncaught SyntaxError: Unexpected token ,

などのエラーが出ることがあります。

プログラミングをしている人はこのエラーの文言を見て、何がまずいのかを理解する必要があります。

このエラーのメッセージはある程度パターンがあるので、しばらくの間プログラミングを続けていると、理解が早くなってきます。

3: 何か問題がおき、その解決方法が日本語のサイトではなく、英語のサイトで探す

プログラミングは、かなりの時間を問題解決の時間となります。

原因が簡単に分かるのであればよいのですが、内容によってはかなりマイナーな問題に直面することがあります。

そうなると、日本語だけではなく、英語で書かれた情報を確認する必要も出てきます。

何故なら、プログラミングの世界において、英語の方が日本語よりも、情報量も新鮮度も圧倒的に上だからです。
少しでも難しい問題/マイナーな問題になると、英語を読む必要が出てきます。

4: APIドキュメントを読む

APIドキュメントを読む

プログラミングをやっていると、”APIドキュメント”と呼ばれる、

各プログラミング言語やフレームワークの使い方を記したドキュメント

を読む必要があります。

Androidだとこんな感じ:

Context

Angularだとこんな感じ:

Ngif

どちらも、あえてAPIドキュメントのトップページではなく、具体的な説明ページへのリンクを貼っています。

プログラマーはここに書いてある内容を見ながら、それぞれの言語の正しい使い方を理解する必要があります。

逆にこのAPIドキュメントを確認せずにプログラミングをすると、意図しないところでエラーが起きたりします。
ですので、特に大規模プロジェクトでの開発においてはこのAPIドキュメントの確認は必須になります。

APIドキュメントを見て「難しそうだ・・・」と感じた場合
それぞれの言語に詳しくない状態だと、難しく見える可能性があります。
ただ、これらのドキュメントはそれぞれの言語の知識があることが前提になっている部分も多く、それぞれの言語を勉強していけば、この難易度も少しずつ下がってきます。

5: その他海外の一次情報を調べる

特にモダンなプログラミング言語で開発している場合、最新の情報についていくのが必須です。

例えばAndroidだと、毎回新しいOSのバージョンが公式にリリースされるはるか前から”Preview version”として、次のアップデートの内容が紹介されます。

なので、プログラマーはこの内容を確認して、自分が作っているアプリに影響がないかを確認することになります。

ここで発表される情報は全て英語のため、それを読んで内容を理解する必要があります。

6: 関係する日本人以外の人とやりとりをする(一部の英語を使ったコミュニケーションをする人向け)

これが当てはまる人は限定されるかもしれません。

一部の外資系企業に務めている人や取引先が海外の人は、関係する人との日常的なコミュニケーションが発生します。

プログラマーの場合だと、

・海外拠点のエンジニアと技術的な議論をする
・海外の顧客と、作るものに関する議論や進捗報告をする

というような作業が発生することになります。

基本的にはメールやSlackでのテキストコミュニケーションがベースですが、場合によっては電話会議やテレビ会議を実施することもあり、これまでの1〜5と比べて、一段上の英語力が求められることになります。

ただ、そういう難しい環境だからこそ英語力が磨かれる、というのも事実です。
僕も強制的にこういう環境に投入されたおかげで、本格的に英語を勉強するきっかけになりました。

プログラマーが英語を使えることメリット

プログラマーが英語を使えることメリット

それでは、ここまで説明してきた5つ (+1つ)の英語を使うケースをベースに、プログラマーが英語を使えることのメリットを紹介したいと思います。

これは、大きく2つに分けられます。

・1: プログラミングのスピードが早くなる
・2: 情報収集のスピードが早くなる / 範囲が広くなる

それぞれ説明していきたいと思います。

1: プログラミングのスピードが早くなる

すでに説明した通り、プログラミングを行う際は、以下のような部分で英語を書く必要があります。

・変数や関数名、クラス名
・プログラム中に書くコメントアウトされたメッセージ
・gitなどのメッセージ

これらには、それほど難しい英語は必要ありませんし、ある程度パターンが決まってくるので慣れてしまえばそれほど苦はなく対応できるケースがほとんどです。

ただ、場合によって

・重要な関数名やクラス名を決めるとき
・パッと見るだけでは伝わりづらい修正を行っているときの補足説明

などでは、その時に応じた英語を書く必要があります。

このようなケースでは、英語力があることによって、よりスムーズにプログラミングができるようになるでしょう。

2: 情報収集のスピードが早くなる / 範囲が広くなる

プログラミングを効率よくこなすためには、エラーがあったときに、素早くその解決方法を調べる必要があります。

そして、エラーの中にはあまり発生頻度が高くなく、日本語で調べても見つかりづらいものがあります。
そういう場合は、英語のサイトを検索する必要があります。

英語のサイトを素早く読むことができれば、エラーの解決スピード、ひいてはプログラミングのスピードを早めることができます。

また、それ以外にも、英語のページが読めるようになれば、海外の新鮮な情報をリアルタイムに得ることができるようになります。

特に最新のIT技術はアメリカがリードしているのまり、英語を読めると、その最新の技術にリアルタイムに触れることができるようになります。

どのくらいの現役プログラマー/エンジニアが英語を使えているのか?

これまで、プログラマーやエンジニアで英語を使えることの重要性を説明してきました。

ちなみに、僕がこれまで見てきたエンジニアの英語のレベルはこんな感じでした。

日本人プログラマーやエンジニアの英語のスキル

[大多数のプログラマー/エンジニア]
・全体の半分くらい: 英語での調べ物に苦手意識を持っていて、サイトまるごとGoogle翻訳にかける
・残る半分くらい: 半分くらいのプログラマー/エンジニアは英語での調べ物ができる

[少数のプログラマー/エンジニア]
・外国人と英語でのやりとりができたり、ネイティブレベルの英語力を持って海外の人とやりとりをできる

このようなレベルなので、今現場で活躍しているプログラマー/エンジニアも、「英語が得意」という人はそれほど多くないのが伝わるかと思います。

ですので、もしあなたが今、英語に苦手意識を持っていたとしても、それほど気後れする必要はありません
むしろ、英語でプログラミング関係の調べ物ができるだけで、プログラミングとしては問題ないレベルになっているということができます。

初心者からプログラマーやエンジニアになる際に満たしておくべき英語のレベル

初心者からプログラマーやエンジニアになる際に満たしておくべき英語のレベル

ここまでプログラマーエンジニアが英語を必要とするケースをまとめてきました。

ただ、あなたはここまで読んできて、

言ってることは分かったけど、具体的にどのくらいのレベルがあればプログラマーやエンジニアとしてやっていけるのか?

という疑問を持ったかもしれません。

そこで、プログラマーやエンジニアとして必要な英語のレベルを説明したいと思います。

結論からお伝えすると、以下の通りとなります。

プログラマーやエンジニアとして必要な英語のレベル
・最初は中学レベルの英語があれば十分
・必要な言い回しや単語は、業務を進めていく中で少しずつ覚える

と考えています。

何故なら、プログラマーやエンジニアの業務では、英語は以下のような位置づけだからです。

プログラマーやエンジニアにとっての英語の位置づけ
・流暢な英語を書ける必要がない
・多少間違った英語でも伝わればよい

海外の人とバリバリやりとりをする人はこのケースに当てはまらないかもしれません。
ただ、普通に日本でプログラマーとして働くのであれば、誰もあなたに流暢な英語力を求めません。

・変数や関数の名前を適切につけられて、
・gitなどのコミットメッセージの内容が分かる単語を使えればよい

英語力としては、このくらいのレベルだからです。

特に初心者の頃に見るエラーは、基本的に誰もが通っている道です。
かつ、初心者の頃から人口の低いプログラミング言語を勉強する可能性も低いことを考えると、エラーが発生したときも、日本語のサイトを探していれば解決方法は見つかる可能性が高いと考えられます。

万が一、日本語で解決方法が見つからないときは英語のサイトから探すことになると思いますが、そのときもそのページ全体をGoogle翻訳を使えばニュアンスは理解できるはずです。

あなたが中級レベルになった後

あなたのプログラミングスキルが中級レベル以上で、プログラマーとして業務をこなせるようになった後は、もう少し英語に力を入れてもよいかもしれません。

こうすると、以下のようなメリットが生まれてきます。

・海外のエンジニアとのやりとりをしたりなど、市場価値を上げることができる
・海外の技術動向を、Google翻訳などを使うことなく見ることができて、よりリアルな情報を収集することができる。

プログラマーやエンジニアが英語を覚える際の方針

プログラマーやエンジニアが英語を覚える際の方針

それでは最後に、プログラマーやエンジニアが英語を覚える際の方針に関して説明したいと思います。

前の章に説明したとおり、僕はプログラミング初心者の人はまず、一番重要なプログラミングを覚えるところに集中すべきだと考えています。

その上で、プログラマーが実務で使える英語を使えるようにするには、回り道をせず、実務で使う単語や言い回しに絞って覚えるのが一番です。

プログラマーの英語学習方法

一番英語力が身につくのは、実践の中で勉強することです。

何かエラーが起きたときにその内容の解決方法を調べつつ、そこで使われている英語表現を勉強したりすると、エラーの解決をしつつ英語の勉強にもなります。

また、英語は見ているだけ、読んでいるだけではなかなか力がつかないので、もし可能であれば、プログラム中のコメントを英語で書いたりすると、

あれ、この表現はどうするといいんだろう・・・

という箇所に気づくことができます。
その言い回しを再度調べることにより、英語力をつけることができます。

具体的に覚えておくべき英語

具体的に覚えておいた方がいい英語は・・・正直、それほどないと考えています。

どんな単語であれ、分からなかったら調べれば何とかなるからです。

僕の感覚で、よく出てくる動詞は以下のようなものだと思います。

Develop (開発する)
Implement (実装する)
Apply (適用する)
Modify (修正する)
Fix (修正する)
Add (加える)
Remove (取り除く)

ここに出ているものに関しては日本人が書く英語でも頻繁に出てくるので、覚えておいた方がよいかと思います。

この他、名詞などに関してはプロジェクトによったりするので、その都度確認が必要です。

まとめ

それではこの記事のまとめです。

エンジニアやプログラマーになるにあたり、英語は、業務を阻害しない程度の必要最低限のレベルがあれば大丈夫です。

もちろん英語力はあるに越したことはありませんが、なくても仕事をすることはできます。

プログラマーの仕事で英語が必要になるのは以下のようなケースがあります。

・1: プログラミングの変数名や関数名の定義する
・2: エラーが発生したときのメッセージを読む
・3: 何か問題がおき、その解決方法が日本語のサイトではなく、英語のサイトで探す
・4: APIドキュメントを読む
・5: その他海外の一次情報を調べる 

これらの、どのケースにおいても、英語は覚えておくに越したことはありません。

ただし、初心者からプログラマーを目指しているのであれば、まずは英語ではなくプログラミングスキルの上達を優先すべきです。

英語は実務の中で出てくる単語や言い回しを知ることによって、十分実務レベルで使える力を身につけることが可能です。
特にプログラマーやエンジニアとしての実力が十分でない間は、英語ではなく、プログラミングの勉強に時間を使うべきです。

これからプログラマーを目指そうと思っている人の中には英語に苦手意識を持っている場合もあるかもしれません。
ただ、この記事に書いたように、英語は(少なくとも最初のタイミングは)なくても何とかなります。

なので、自信をもって、プログラミングの勉強を続けていただきたいと思います。

ここまで読んでくださったあなたが、英語に対する不安を払拭して、プログラミングの学習に集中できるようになることを願っています。

この記事は以上となります。

ここまで読んでくださり、ありがとうございました!

コメント

タイトルとURLをコピーしました