
PythonとRubyのどちらを学ぶべきか。という問題は、プログラミング初心者や、ある程度プログラミングに慣れてきた人の多くが抱く疑問ではないでしょうか。
この記事ではPythonとRubyの2つの言語を実際に学んできた筆者の経験をもとに、どちらの言語が学びやすく、おすすめかを見ていきたいと思います。
そもそも、何ができるの?
それではPythonとRubyを比較しつつ、どちらがおすすめか見ていきましょう。
どちらの言語も多種多様なことができますが、その中でも特に得意とすることや、よく使われている分野について特に重点を置いて見ていきます。
それでは早速見ていきましょう。
Python
機械学習
Pythonは、Webアプリケーションを作ることが得意です。フレームワーク(よく使われる機能を集めたもの)が充実しているので、Webアプリケーションを手軽に作ることができます。
また、機械学習などのAIに関する分野はPythonがよく使われており、技術の最先端を走り続けています。
Ruby
Webサイトの作成
Webアプリケーションの開発はRubyが得意とする分野です。
Ruby on Railsなどのフレームワークを用いると、簡単かつ早くアプリケーションを作ることができます。
Webページを作るのも得意で、GitHubや食べログなどはRubyを使って作られています。
PythonとRubyを実際に触れての感想
次に、実際に2つの言語を学んだ筆者が感じたことを挙げたいと思います。
Python
PythonにはPython2.Xであらわされるような2系と、Python3.Xであらわされる3系があります。筆者は主に3系で開発をしていましたが、2系でしか使えないライブラリもあり、Python2系とPython3系の両方で開発できるような環境を作るのが少し大変でした。
Pythonの文法は読みやすさを高めるために簡単な文法を採用しています。そのため、文法的なところで躓くことはありませんでした。
Ruby
Rubyは日本で生まれたプログラミング言語なだけあって、日本語で書かれたサイトや本が多いように感じました。
文法の面では、if文の最後につけるendが少し面倒に感じましたが、文のブロックがとても分かりやすいように思いました。
実際に学ぶならどっち?
ここからはタイトル通り、どっちのプログラミング言語を学ぶべきかについて触れていきます。
下に示すような3つのパターンに分けたので、今の自分に一番近いパターンを見てください。
・Webアプリケーションを作りたい人
・機械学習などのAIの分野に触れたい人
・特にやりたいことが決まっていない人
Webアプリケーションを作りたい人
Webアプリケーションを作りたいという明確な目的があれば、Rubyが圧倒的におすすめです。
RubyにはRuby on Railsなど、フレームワークが数多くあるので、初心者であってもそこまで苦労せずにWebアプリケーションを作ることができます。
また、Rubyはまつもとゆきひろ氏によって日本で開発された言語なので、日本語のリファレンス(説明書のようなもの)がとても豊富です。
このように、RubyにはWebアプリケーションを作るには最適な環境が揃っています。そのため、Webアプリケーションを作ってみたい人はRubyから学び始めるといいでしょう。
機械学習などのAIの分野に触れたい人
機械学習などのAIの分野に触れたいという目的があれば、Pythonをおすすめします。
機械学習などのプログラムには行列の計算や、統計の処理が必要不可欠といっても過言ではありません。Pythonにはこういった計算を行うためのライブラリ(プログラムの集まりのようなもの)が数多くあります。
そのため、Pythonで機械学習などのプログラムを作成するのは他の言語に比べてとても楽です。
現在、AIといったらPython。というほどに、機械学習などのAIの分野においてはPythonがよく使われており、活躍もしています。そのため、機械学習などのAIの分野に触れたい人はPythonを学ぶといいでしょう。
特にやりたいことが決まっていない人
この記事を見ている人のほとんどはこのパターンに当てはまると思います。やりたいことが特に決まっていない人は、Rubyを最初に学び、簡単なWebアプリケーションを作ってみることをおすすめします。
理由としては、Webアプリケーションを作ると、様々な技術を一緒に学ぶことができるからです。データを扱うためのSQL、Webページを作成するためのHTML、Web上の表示を整えるCSS、Webページに変更を加えることのできるJavaScriptなど、軽く例を挙げるだけでも、かなり多くの技術を学ぶことができます。
筆者は、簡単なWebアプリケーションに機能を追加していくという方法で、前に挙げた技術を学んでいきました。完璧に使いこなせるレベルまでは至りませんが、ある程度のことならできるようになります。
まとめ
筆者自身、Rubyを学び、Webアプリケーションを作ったことで大きく成長できたと感じましたので、この記事ではどちらかといえばRubyをおすすめさせていただきました。
筆者はRubyを学んでからPythonを学びはじめ、結果として両方の言語を学びました。どちらもの言語も使いこなせるようになってくるととても楽しい言語です。
この記事がPythonとRubyのどちらから学ぼうか悩んでいる方の助けになれば幸いです。
最後までお読みいただきありがとうございました。