Column
複数のプログラム言語を学ぶ意味

生徒と話していて、「次は〇〇言語をやるべきでしょうか?」と質問されることがあります。
今は沢山のプログラム言語があり、迷うことも多いと思います。 特に仕事としてプログラミングをしている方は、自分の好みに関わらず今後の需要や報酬など、考えるべきところも多くあります。
まず、プログラマーとして幅広く活躍するならば、特定のプログラム言語に依存するべきでないと思います。
趣味としてプログラミングを楽しむ「サンデープログラマー」の場合は、自分の好きな言語を自由に追求してもよいと思います。 しかし、仕事になると依頼によって求められる言語も異なり、一つの言語で乗り切るのは難しいでしょう。
沢山のプログラム言語を習得していくとなると、とても大変に感じますが、あまり悲観的に考える必要はないかもしれません。
私自身、プログラミングを始めたばかりの頃は、プログラム言語が違うと何もかも違うと思っていました。 しかし、今では言語の違いはそれほど大きくないと考えています。 日本語でも様々な方言があるように、プログラム言語の違いも、ある種の方言のような感覚です。
また、一つの言語に固執せず、あえて別の言語に触れることで言語の「思想」の違いを知ることができます。 例えばC言語だけ続けていると、「プログラミングの世界 = C言語の世界」になり、発想が狭くなってしまう恐れがあります。 もちろん、一つの言語を追求することも素晴らしいことですが、別の言語を経験することで、これまで経験してきた言語のレベルアップにもつながります。 Javaを知ることでC言語の隠れた良さが見つかりますし、C言語を知ることでPythonで新たな気付きを得ることもあるでしょう。
大切なのは「言語(書き方)を変えただけ」にならないようにすることです。 その言語が生まれた背景や目的をしっかりと考え、言語の特性を最大限に活かすにはどうすればよいか?に注目してください。 Javaで書いたからといって、そのプログラムがJavaの理念に沿ったものになるとは限りません。 いかにJavaの考え方ができるか?が重要で、Javaの文法を覚えるよりもずっと難しいことです。 しかし、そうやって得た「考え方」は他の言語にも幅広く応用できる強い力になります。
初心者の段階で、色々な言語に手を出すべきではないと思いますが、 一つの言語にある程度自信がついたら、ぜひ別の言語に触れてみてください。 新たな発見の宝庫です。