【現役エンジニアが解説】プログラミング学習の為に英語は不要!?その根拠を説明します

f:id:abumogu:20190526103246p:plain

 

プログラミングできるようになりたいなぁ〜そのためにもまずは英語学習だな!

 

プログラミングをマスターしたいと思っているそこのあなた!

 

プログラミングを習得するためには、英語が出来ることが必須条件だと思っていませんか??

 

今日はそんな思い込みをしちゃってるかた向けに、スキル習得のために英語力は(あまり)必要ない!!

 

という話をしたいと思います!

 

 

英語が出来なくても、バグフィックスはできる!

プログラミングで一番大切なことは、

 

バグを自分で直せること!

 

です。

 

細かいことをあげると

  • 変数名の付け方
  • オブジェクト指向
  • ライブラリの活用
  • 可読性の意識
  • パフォーマンス(実行速度)が出せるか

などなど、挙げればキリが無いですね。(笑)

 

綺麗で誰もが読みやすいコードを書くのが理想ですが、

いきなり完璧を目指さなくてもいいんです!

 

エラーが発生する

   ↓

エラー分を検索で調べる

   ↓

検索結果を見る

   ↓

バグを修正する

 

この繰り返しができれば、プログラミングスキルは向上していきます。

 

「でも、エラーメッセージって英語だよね?英語できないと詰むじゃん」

f:id:abumogu:20190519004659p:plain



確かにエラーメッセージは英語ですが、それを理解するために英語を勉強するほどではありません。

 

次にその理由を説明していきます!

 

 

初級~中級者が出会うバグは日本語で情報がまとまってる

一つ目の理由ですが、初心~中級で遭遇するバグは、大抵日本語で懇切丁寧に、解決方法まで解説されているからです。

 

有名なサイトにまとめサイトの「qiita」がありますね。

※時々書いてることが間違ってることもありますが、、、

 

しかし、基礎も十二分に抑えて、経験を積んでくると、日本語では情報が出てこないバグに遭遇することがあります。

 

結論を言うと初めのうちは、日本語でのまとめサイトで十分事足りますが、ある一定レベル以上になると英語のページを読まざるを得なくなります。

 

 

翻訳ツールが目まぐるしく進化してる

 先ほど、ある一定のレベルのバグフィックスになると英語サイトの情報しか出てこなくなるといいましたが、それでもまだ、英語は必要ありません。

 

 

「え?英語読めなかったら先に進めないじゃん。。」

f:id:abumogu:20190519004659p:plain


 

確かにおっしゃる通りです。それでも英語が不要だと主張する理由は

 

グーグル翻訳が超優秀だから

 

ある一定レベルを超えると、英語のページしか出てこないので

 

「うわぁ、マジか。。これ。。」

 

と激萎えしてしまいますが、グーグル翻訳があれば、何とか突破することができます。

 

1.自分が欲しい情報がありそうかざっくり調べる

まずは、英語のサイトがガッツリ出てくるので、上位何ページかをグーグル翻訳で全翻訳をします。

 

そのページをバーッと読んで、自分が欲しい情報がありそうかどうかを判断します。

 

2.日本語がおかしいところは一行単位の翻訳にして読む

グーグル翻訳の精度は年々上がっていて、今では長文でも自然な日本語で翻訳してくれるようになりました。

 

しかし、まだまだおかしな日本語に翻訳されることもあります。

 

そんな時は、翻訳する範囲を変えてみましょう。

改善する可能性があります。

 

3.それでもおかしい場合は、原文に直して頑張って読む

それでもおかしい場合は、原文に戻して頑張って読むということになります。

ここまでくると英語力が不要だ!という主張は少し苦しくなります(笑)

 

しかし大抵の場合は、単語レベルに分解して翻訳していくと意味が理解できます。

 

 

英語力ができると有利になること

「え?英語力は全く必要ないの?」

f:id:abumogu:20190519004659p:plain
 

いえ、ここまで英語はいらねぇ!と言ったきながらなんですが、ぶっちゃけある一定以上の人には必要です。

 

次に英語ができるとどんなメリットがあるかをご紹介します。

 

最新情報を入手できる

最新の情報は、英語で出回ることがほどんどです。

英語ができるというか、英語で情報を常に収集できる癖を身に着ければ、これらの最新情報をいち早く入手することができます。

 

開発が盛り上がっており、どんどんと新しいバージョンがリリースされていくような技術領域では、「日本語で出てる情報は古いから、全部信じるな!」なんて状況になることもあります。

 

なので、トレンドを追いかけないといけない立場にあるようなエンジニアには英語力は必須となります。

 

バグフィックスの際は、このバグを直したい!!という明確な目標があるので、英語サイトでもグーグル翻訳を武器に立ち向かえます。

 

しかし、普段からTwitterをチェックする感覚で英語記事をチェックするには相当な慣れが必要ですね。

 

活動の範囲を広げることができる

英語ができるようになる最大のメリットは、英語でコミュニケーションが取れるということです。

 

つまり、活動の範囲を広げることができます。

 

私の会社でも

  • 海外カンファレンスへの参加者募集
  • 海外トレーニー制度
  • 海外戦略子会社への短期派遣

など、英語さえできれば、海外で活躍できるチャンスは無限に用意されています。

 

英語さえできれば

 

なので、ある一定レベル上になり、海外での活躍を求められるようになると、英語は必須になってくるでしょう

 

おわりに

いかがでしたでしょうか?

 

今日話したことをまとめます

 

プログラミング学習に英語が不要な理由

  • 初心者が出会うバグは日本語でまとめられている
  • 英語で調べる必要があってもグーグル翻訳が大抵何とかしてくれる

英語ができるメリット

  • 最新の情報を入手することができる
  • 活動の範囲を海外に広げられる

 

これは完全に余談ですが、私の部署の超プログラミングができる方がいるのですが、この前こっそり画面をのぞいたら、Decemberが何月かをググってました。

 

「12月だよ。Decemberは。マジかよ。。」

 

と若干引きましたが、こんなに普段から、ガンガンプログラミングをやっている方で、ここまで英語ができない人もいるんだ。。と軽く衝撃を受けました(笑)

 

上記より、初心者は英語学習する前に、プログラミングの学習に直接取り掛かったほうが、手っ取り早いです!

 

英語学習を頑張ってから、プログラミング学習に着手するのは非常にナンセンス!

 

しかし、さらに上を目指したい方、将来的に海外で活躍したい方は合わせて英語能力も必須になります。

まずは、技術力を身に着けてから、英語を学ぶようにしましょう!

 

本日は以上です。

最後まで読んでいただきありがとうございました!