「最初に学ぶプログラム言語として何を学んだらいいですか?」
プログラマーとしてある程度キャリアを積むと、初心者の方からそのような質問をされることがあります。
結論として、最近流行っている言語であれば何でも良いと思います。
PHPでも、Pythonでも、Javaでも、プログラム言語としての基本はほぼ同じです。
その基本をしっかり身につけることが上達のコツになり、他の言語を学ぶ際のハードルを下げることにもなります。
もうちょっと具体的にお話しましょう。
例えば、PHPの基本を学ぶとしましょう。
文字列の出力。
変数の定義、代入。
配列。
ループ。
条件分岐。
関数。
もうちょっと進んで学びましょう。
クラス。
インスタンス。
インタフェース。
さらにデータベース接続や、Webに関することも学びましょうか。
DBへの接続。
クエリの投げ方。
HTML出力。
POST、GETの受け取り。
さて、ここまでで、PHPの知識を得たとします。
では、Pythonを学ぶとしましょう。
そうすると、一番最初にプログラムを学んだ時から「知識の横展開」ができるようになっていることでしょう。
「知識の横展開」とはどういうことかといいますと。
PHPで実現していた、変数の定義はPythonではどうやるんだろう?
という疑問を持てるということです。
PHPで得た知識をPythonの世界に展開できるのです。
これは、PHPをしっかり学んでいればいるほど、効果が高くなります。
PHPの学習の段階で
文字列の出力。
変数の定義、代入。
配列。
ループ。
条件分岐。
関数。
で、終わってからPythonに移ると、それ以降クラスやインタフェースでの横展開はできなくなります。
逆に、クラスやインタフェースをPHPの段階で学んでおけば、Pythonではどのように実現するか?と考えることができます。
つまり、1つの言語の基本を身につければ身につけるほど、その身につけた度合に応じて、他の言語も早く理解できるようになるのです。
以上のことから、最初に学ぶ分には最近の言語であれば何でもいい、と言えます。
まずは1つの言語を徹底的に学び、その知識の横展開で他の言語を学ぶと良いでしょう。
そうすると、それぞれの言語の特性を知ることができ、プロジェクトに適した言語を提案できるような、1つ上のエンジニアになれます。