色々質問いただきますがこれがぶっ飛んで多いです
回答としては何をしたいかによるんです
アメリカに住みたいけど何語学ぶべき?って言ってるような感じなので
なのでやりたいことすら決まっていない人におすすめの言語を提示して、こんなことできますよって言うのをご紹介しようかと
Ruby

まずはRubyです
用途としてはWebアプリの開発です
Webアプリとは下記のようなものです
- Youtube
- クックパッド
- Hulu
実際にクックパッドとHuluはRubyで作られています
非常にシンプルな構文で書きやすいと思います
またRubyは日本人が作った言語なのです
業務になるとそのままRubyで開発することはなく、Railsというフレームワークを使います
RubyにWebアプリ開発専用装備をまとわせる感じです
このRailsが非常に強力で、開発効率が爆上がりします
とにかく目的はWebアプリ開発って考えてるならこれが一番オススメです
Webアプリ開発以外もできますが、求人としてはあまりなく、Webアプリ専用言語で割り切ってしまう方がいいです
この分野においてはかなり強いので
Kotlin

主にAndroid開発に使われる言語ですが近年だとWebアプリ開発、データサイエンス、機械学習、マルチプラットフォーム開発に利用されます
データサイエンスとは大量のデータを分析し、そこから有益な情報やパターンを見つけ出すことです
機械学習は平たく言えばAIの開発です
マルチプラットフォームは一つのコードベースでAndroidやiOS、デスクトップ、Webなどのシステム部分を構築してしまう開発です
新しい言語なので他言語のいいところを引き継ぎ、悪いところは改善し、求められる機能を入れ込んだ次世代型超万能言語です
またJavaと完全互換性があり、今まで長く、多く築き上げたJavaの資産を丸ごと引き継げるのがあまりにも強すぎます
将来性、汎用性が非常に高い言語で僕のイチオシ
JavaScript

Webに纏わる仕事をしたいならとりあえず必須になってきます
Webのフロント部分、つまりはユーザーが操作したり、ユーザーに見える部分を作るプログラミング言語はこの子しかいません
HTML/CSSを軽く学習してその後JavaScriptを学ぶとよいでしょう
ちなみにJavaScriptはWebのフロントだけでなくバックエンド、つまりはWebアプリ開発もできます
さらに言えばスマホアプリ、デスクトップアプリなども作れます
汎用性は異常なまでに高いです
ただ問題点としてやらなければ行けないことが多いです
Ruby同様にそのままJavaScriptで書くことはあまりなく、VueかReactを使います
とりあえずここまではできないと話にはなりません
そこからNuxtかNextっていうフレームワークを使用します
さらに言えば拡張言語であるTypeScriptも使います
ここからバックエンドも考えるならNode.jsやExpressというものも学ばなければいけません
入口は優しいですがやること多すぎて結構後から苦しいです
ただ冒頭にもお話しましたが、Web関連に興味あるなら必須ですし、Web制作(企業や個人のHP作成)をしたいならこれ一択になります
Python

ここ最近機械学習やデータサイエンスで何かと話題の言語です
Webアプリ開発もできます
この子も汎用性は非常に高く、様々なことが出来るので人気です
構文もRuby同様にシンプルですしね
様々な言語でデータサイエンスや機械学習はできますが、ファーストチョイスとなるとPythonです
ライブラリといって何かしらのアイテム的なものがあるのですが、データサイエンスと機械学習で考えるとそれ系のアイテムが豊富です
別にデータサイエンスや機械学習ではなくWeb開発が目的だとしても選んでいいとは思います
Kotlin同様に汎用性が高いのでWebアプリ以外のものが作りたくなっても対応できますし
ざっとした選び方
- Webアプリ開発がしたい→Ruby
- Web制作がしたい→JavaScript
- 一つの言語で色々したい→Kotlin、Python
- Androidアプリが作りたい→Kotlin
- データサイエンスや機械学習がしたい→Python
という感覚で良いと思います
はっきり言ってどれか一つ習得してしまえば後はどうとでもなります
例えばRubyから学んで、後々JavaScriptを学ぶことになったとしてもだいたい2週間ほどで習得できます
はじめの言語は構文とプログラミングの概念を学ばないといけません
しっかり定着させるならやっぱり3ヶ月〜6ヶ月は考えておきましょう
しかし2つ目以降で学ぶのは構文だけです
構文なんてどれも似たりよったりなので簡単です
それでも決められない人向けに
これと言って作りたいものがないけど何か学びたい!という人にはRubyをおすすめします
理由は思想が統一されているからです
JavaScriptだとVueをするのか、Reactをするか?
PythonだとWebならDjangoなのかFlaskなのかFastAPIなのか?
KotlinだとWebならKtorなのかSpringBootなのか?
みたいに選択肢が複数あったりして悩むことになります
しかしRubyはRails一強であり、Railsが絶対的正義です
なので学習路線で迷いが出ません
またそのままのRubyだと何もできないか?と言われるとそれは違います
普通にシステムは作れます
僕も本業で使うちょこっとツールとかはRubyで作ってました
エクセルの操作や、商品の売上とかのデータ分析などRubyで作っています
とりあえずRubyでプログラムとはなにか?っていう土台を固めてしまうのもいいと思います
案件とか探していると高単価フルリモートも多いですし
コメントを残す