今回は初心者が選ぶべきプログラミング言語についてお話します٩( ‘ω’ )و
プログラミング言語って実はどの言語を選ぶかによってその後のライフスタイルまでに影響するほど、エンジニア人生が変わります。
ただ、初心者やプログラミング未経験の人にとってはどの言語を選べば良いのかよくわかりません。
よくtwitter上でも「どの言語を勉強すれば良いですか?」という質問をたくさん見かけます。
プログラミング講師をやっているとこういった情報が色んなエンジニアを通じて入ってくるので、しっかりここでそれぞれの言語の特徴と就職しやすさまでお伝えします。
私が見る限りでも初心者が知っている情報と現場を経験知っている人の情報にかなりギャップを感じたので、しっかり就職に関係のある情報を中心にお伝えします!
Contents
初心者にオススメするプログラミング言語5選
プログラミング言語別、日本市場の大きさ
1.【Java】就職は困らないけど初心者にはムズイ。。。
2.【PHP】web系におすすめ!初心者にはちょっと難しい
3.【Ruby】初心者にも習得が簡単で人気!ベンチャーに案件が多い
4.【Python】AIをやりたいならPython。ただし案件はまだまだ少ない
5.【Javascript】web系の人は使えるようになった方が良い
1.【Java】就職は困らないけど初心者にはムズイ。。。
就職しやすさ | 簡単 |
---|---|
習得難易度 | 難しい |
おすすめ度 | |
将来性 | 普通 |
最近はJavaも便利なフレームワークが出てきたので、だいぶ使いやすくはなっていますが、やっぱり最初に覚える言語としてはハードルが高いです。
Javaは挫折する人も多いので、プログラミング初心者や未経験の人にとってはきついところがありますが、Javaができると他の言語も習得しやすいです。
しかし、市場は圧倒的にJavaが多くて、ツイートにもあるようにプログラミングスクールはRubyを学んだのに就職したらJavaだったみたいな方が大半だと思います。
何よりプログラミング未経験の人が入る余地のある仕事がJavaには結構多いです。
ただしJavaは結構難しい言語で初心者にはハードルが高い。
また、ブラック企業もJavaを扱っていることが多いと言われています。
ただし最初のステップでJavaがもしできたら、他の言語も十分習得が可能で、最初のハードルを乗り越えてプログラミングの実力をつけることができます。
そういう意味では最初にJavaの勉強をしておくのは賢い選択です。
未経験には難しいけど就職はしやすい。ブラックが多いのもJava。
2.【PHP】市場もでかいので結構おすすめ!
就職しやすさ | 簡単 |
---|---|
習得難易度 | まあまあ難しい |
おすすめ度 | |
将来性 | 普通 |
PHPもJavaと同様に市場がかなり大きく、PHPを勉強したら就職には困らないでしょう。
特にweb系には強いのでPHPを最初に勉強するのはかなり良いです。
習得難易度ちょっと高いかもしれませんが、web系で就職を考えるなら案件が多いPHPはおすすめです。
web系にいきたい人はPHPは市場も大きいのおすすめ。ただちょっと習得が難しい。
3.【Ruby】初心者の習得が簡単でだんだん人気になっている
就職しやすさ | 難しい(ベンチャーが多い) |
---|---|
習得難易度 | 割と簡単 |
おすすめ度 | |
将来性 | 高い |
web系を目指す人はプログラミングスクールを探すとRubyを学ぶところが多いです。
リモートワークなどが多いのもRubyです。
市場としてはベンチャーやスタートアップで扱っているところが多いです。
少数精鋭でスピードを重視して開発していることが多いので、未経験の人が入る余地があまりなかったりします。
そのため、プログラミングスクールではRubyを学んだのに就職したらJavaやPHPだったという人はかなり多いです。
RubyはRuby on Railsというフレームワークがだいぶわかりやすく、楽しくプログラミングを書くことができる設計がなされているので、未経験から始める言語としては挫折率が低くかなりおすすめです。
しかし、Rubyを使った仕事に就職するのは結構難しかったりします。
Rubyは、実際市場はどんどん大きくなってきて人が足りていないので、実力のある人ならかなり仕事が回ってきます。
リモートワークなどが多いのもRubyなので未経験の人にとってはかなり人気の言語です。
しかし、市場から見た時に未経験に対する需要は正直低いです。
web系のベンチャーやスタートアップの会社が多い。Rubyは少数精鋭で開発することが多いので、未経験が入る余地があまりない現状がある。
しかし、楽しくプログラミングが書けて今後も市場が大きくなる可能性が高いので最初の勉強におすすめ。
4.【Python】AIをやりたいならPython。ただし案件はまだまだ少ない
就職しやすさ | かなり難しい |
---|---|
習得難易度 | 難しい |
おすすめ度 | |
将来性 | 高い |
Python自体はそんなに習得が難しくはありません。
今はAIが人気すぎてPythonを勉強しようとする未経験の人もかなり多いです。
しかし、AIを習得するにはそれ以外に幅広く学習しないといけないだけでなく、未経験から習得するのはかなりハードルが高いでしょう。
しかもAIプログラミングの現場って思ったよりも地味で未経験の人が描くようなきらびやかな世界ではありません。
数学のこともわかっていないといけないので、多分現場に入ってからきついと感じる人はかなり多いのかなと想像しています。
案件もまだまだPythonは少ないです。
ただし、今後必ずAIが来るのは間違いありません。Pythonを扱っているエンジニアからはめちゃくちゃPythonの勉強を勧められます。
もしAIの勉強をしたい場合は仕事で現場に入るか、未経験の場合は大学院に入ることが多いです。
興味のある人は挑戦する価値は十分あります!
未経験からいきなりAIに手をだすのはかなりハードルが高いが、これからどんどん人気が高まるので仕事が増えてくる可能性が高い。
5.【Javascript】web系の人は使えるようになった方が良い
就職しやすさ | 普通 |
---|---|
習得難易度 | 難しい |
おすすめ度 | |
将来性 | まあまあ高い |
JavascriptはWEB系の画面周りの動きを作るのに使います。
Javaとは全く関係ありません。
Javascriptはどの言語を学ぶにしても少しは触れておいた方が良い言語で、特にweb系に行こうとしている人は必ず習得しておくべき言語です。
Javascriptはnode.jsという便利なものがあるので、Javascriptは知っておくべき言語です。習得は結構難しいですが、これからもどんどん人気が増すと思われる言語です。
web系にいきたい人は絶対に触れておくべき言語。市場の人気も高い。
プログラミングスクールはなぜRubyが多いの?
プログラミングスクールの衝撃!
転職先には未経験としてはいるから、勉強した言語が違ってもいいですかと聞かれた。つまり、今まで、Railsを中心に勉強していたのに就職先はJavaですみたいなことらしい。私が未経験であり、まだまだ現場で通用するレベルでないのはわかるが、3ヶ月勉強した意味とは…— セヴァス (@sevasu1991) 2018年11月30日
プログラミングスクールで学ぶ言語としてRubyが多いのは
・楽しくプロググラミングが書ける
・初心者の学習達成率が高い
エンジニアにとって楽しくプログラミングが書けるように設計されているので、プログラミングの楽しさとRuby on Railsの便利さを体感できるはずです。
ただしそこからRubyを使った仕事に就職できるかというとそういう訳ではありません。
それでもRubyで何かwebアプリを作成することでプログラミングに対する考えが身について、ポートフォリオも作りやすいので就活の時にスキルを見せやすいです。
就職活動はぶっちゃけ未経験の場合あまり言語は関係ありません。
それよりもコミュニケーション能力や情報発信の方がずっと大事です。
どうしても未経験の場合はポテンシャル採用になってしまうので、ポートフォリオを作る時どのように勉強して、どのように行動したのかを情報発信して面接の時に話せるだけでも全然違います。
一つの言語を極めると他の言語も習得しやすくなる
今はメ○カリのエンジニア組織の偉いポジションについてる人に会いに行った時「色々な言語に目移りしがちだけどグッと我慢して一つの言語で学びを深めた方が良い」という話を聞いた。理由は「一つの言語で強くなれば他の言語でもそこまで行くのは早いから」 #Progate #駆け出しエンジニアと繋がりたい
— eight@Progate応援 (@redtail03) 2018年10月4日
まさにこのツイート通りでどんな言語を始めるにしても一つを深く理解すると他の言語は文法が違うだけなので、習得が簡単になります。
だから最初の1~2年は修行期間と割り切ってたとえ勉強したくないJavaやPHPだったとしてもしっかり就職しやすい言語で実力をつけてしまった方が良いです。
そのあとは別の言語を勉強しても十分習得可能で、実務経験2年とかあったら十分仕事が入ってきます。
だから最初にプログラミングを勉強するのにRubyを私もおすすめしています。
プログラミングは挫折率が90%と高く、もっとも挫折しにくい言語を選んでしっかりポートフォリオを作成すれば十分就職が可能だからです。
そのあとはJavaやPHPに行ったとしてもあとでRubyに帰ってくることも可能です。
ただ、Rubyを勉強したら就職が余裕という訳ではないので、むしろプログラミング言語よりも人間性やコミュニケーション能力の方が就活に置いては大事なので、最初に勉強する言語はRubyで良いのかなと思います。
それよりもしっかりプログラミングを勉強していることの情報発信をすることが大事で、勉強する中でどのように乗り越えてプログラミング勉強していったかのほうが採用側のエンジニアは認めてくれます。