プログラミング未経験者は最初にどの言語を勉強するべきか
おそらく殆どの人はgoogle
検索などで「プログラミング言語 初めて」などと検索し、初めて学ぶプログラミング言語は何にするべきかを調べていると思います。
基本的には上記検索結果で表示されるページを見れば、以下の5つぐらいには絞り込めると思います。
java
ruby
php
c
JavaScript
プログラミング言語を選ぶポイント
上記のどれかを選んでおけば問題ないとは思いますが、最終的に学習するべき言語を1つ選択するにあたって2つポイントをあげます。
どの言語を選んでもあまり変わらない
プログラミング言語の勉強というと日本語や英語などの語学の勉強をイメージしがちですが、英語を覚えるよりもハードルはかなり低いです。
例えばjava
とphp
のどちらを学ぶべきか迷うのは英語
と中国語
のどちらを学ぶべきかというほど深刻な問題ではありません。
ほとんどのプログラミング言語は共通した考え方が存在します。プログラミング言語全般を日本語
とすると、java
やphp
は関西弁
や東北弁
などの方言
のようなものです。(少し言いすぎかもしれませんが。。。)
義務教育で何年もかけて英語を勉強したのに全く使えない。。。という苦い経験からプログラミング言語の選択が慎重になってしまうのは理解できますが、プログラミング言語は1つの言語さえ習得できれば2つめ3つめの言語はすぐに習得できます。
もちろんjava
にはjava
ならではの強みやその強みを活かしたプログラムを書くことが求められますがそれは最終的な話で、プログラミングの初心者がそれを意識してしまうと逆に混乱してしまう気がします。
プログラミング未経験者が初めてプログラミングを勉強する場合は、それぞれの言語の特徴の差がわかるほど高度なことはしないはずです。
人気ランキングなどは考慮しない
「この言語の人気が高い」「この言語を学んでおけば就職で有利になる」などの情報はあまり参考にしないほうがいいと思います。
例えば就職活動の一環としてプログラミング言語を学習する場合、その言語での実務経験があるのなら評価されるのかもしれませんが、「この言語の基本的な文法はマスターしました」程度では残念ながらPRにはなりません。
特に新卒採用において評価されるのは「どの言語ができるか」ではなく「プログラミング経験があるかどうか」です。
そもそもプログラミング経験不要のIT会社もたくさんありますし、入社後にその言語で仕事ができるとは限りません。
なので、上述した内容とつながりますが、どの言語を選択しても大きな差はありません。
私がおすすめするプログラミング言語は...
上述したとおり、どのプログラミング言語を選択しても大差がないということを踏まえて、結論ですが、個人的にはプログラミング未経験者が最初に学ぶ言語はJavaScript
をおすすめします。
環境構築が簡単
1番大きな理由は環境構築が簡単なところです。(というより「WEBブラウザ」さえあればいいので環境構築は不要です。)
初めてプログラミングを学習する人が最初に苦労するところは環境構築です。
プログラミングが未経験ということは「ファイルパスを指定する」「コマンドプロンプト」「環境変数」などといわれてもピンとこないと思います。
環境構築というまだスタートラインにすらついていない状態で挫折してしまうのが一種の「あるある」になっています。
成果物を簡単に公開できる
JavaScript
はWEBブラウザさえあれば動作します。なので学習の一環として作成したプログラムを友人に見てもらいたい場合などは実装したファイルだけ送って、友人にブラウザでアクセスしてもらえば同様の動作をします。
いろいろなソフトをインストールする手間がかからないので気軽に始めることができます。
まとめ
JavaScript
は人気度や注目度や将来性なども良いのでアピールしたいところですが、上述したように初めてプログラミングを学習するにあたって、このことは大して重要ではありません。
難しい環境構築が不要で手軽に始められるということが、初めてプログラミングを学習する人にとっては大きなアドバンテージだと思います。
また、「JavaScript
をマスターする」ではなく「プログラミング言語の基本的な考え方をマスターする」ということをプログラミング学習の最初の目標とするのをおすすめします。