英語でプログラミングを学ぶと何が良いか
リトルハッカーでは、小学生に英語でプログラミングを教えています。英語で教えることには、英語の習得につながるだけでなく、プログラミングの習得にも大きなメリットがあります。
プログラミング言語は英語との親和性が高い
英語でプログラミングを学習するメリットとして、まずは、プログラミング言語と英語との親和性の高さが挙げられます。多くのプログラミング言語は、英語をベースに作られていて、最近の言語ではより英語に近い感覚でプログラミングできるようになっています。
プログラミング言語のベースとして英語が採用されているのは歴史的な経緯も大きいと思いますが、使用する文字がすべてシングルバイト文字に収まり文字変換なくタイプできる、時制や活用がシンプルなルールに則っているなど、そもそもコンピューターの設計思想にマッチしている部分もありそうです。
このように英語をベースに作られたプログラミング言語を理解するには、日本語への翻訳を介して理解するよりも、ダイレクトに英語の文章として理解する方がはるかに容易です。初めてプログラミングに触れるお子さんであればなおさら、いずれにしても新しい概念を学ぶのですから、日本語のクッションをわざわざ挟むのはもったいない気がします。
発展性を求めるなら英語は避けられない
リトルハッカーでも授業で使っているScratchには、プログラミング言語を日本語に切り替える機能があります。Scratchはプログラミングの命令がブロックで表現されていてタイプする必要がないため、日本語化が可能です。
しかしながら、もう少し発展してSwiftやRuby、Pythonなど他の言語に取り組む段階になると、日本語でプログラミングすることはできません。基本的な命令はプログラミング言語が違ってもよく似ていることが多いので、Scratchで覚えた英語のコマンドは他の言語でも応用することができます。
プログラミングを習得したい人は、Scratchをマスターして終わり、という訳ではないと思いますので、本格的なプログラミング言語を学ぶことも視野に入れると、最初から英語で学び始めた方がスムーズに発展していけるでしょう。
また、プログラミングの学習が進むと、いろいろと分からないことが出てきた時にインターネットで解決方法を探る必要が出てきます。この時、多くの情報ソースは英語で書かれているので、英語が読めないと、ごく限られた情報の中から解決方法を探らなければならなくなります。
こういった面からも、英語に慣れていくことはプログラミング習得にとって大きなメリットがあると言えます。
英語も自然と覚えられる
さらに、プログラミングを英語で学ぶことは、英語の学習としても効果が高そうです。実際のところ、英語が初めてのお子さんでも、すぐに英語のコマンドを覚えて、「forever」「duplicate」といった単語を読めるようになります。
授業中はネイティブの講師が英語で説明をしたり、質問に答えたりしますが、生徒は英語を完全に理解できないまでも、どうにか、それを手掛かりにプログラミングを進めていく様子が見られます。英語を覚えること自体が目的の英会話教室などで英語を習得するのは難しいですが、やりたいことや知りたいことがあって、その目的を達成するために英語を使うことは、英語の学習としても理に適っているようです。