• 締切済み

PythonとRubyどちらを選ぶべきでしょう?

こんにちは。 今、PythonとRubyどちらをメインで学ぶべきかを考えており良かったら皆様の意見を参考にしたく思います。 現状 Ruby 7ヶ月 Python 1ヶ月 ほどの経験があります。(プログラミングはまだ初心者です。) Rubyの方が慣れているのですが、以下のような考えからPythonをメインで使った方がいいのか考えています。 以下、僕の考え 今後、Ruby on Railsがどんどん使われだして、現在のPHPのような形でRubyが使われるんじゃないか。 とすると、Rubyを使っても他の人と全く差別化出来ない取り替えの効いてしまうプログラマにしかなれないのでは。 Pythonの場合は、まだ日本でのユーザー数が少ないこともあり、Ruby,PHPに比べれば自分を差別化することにつなげられるのではないか。 とすれば、Pythonを使った方がいいか? ちなみにコレ以外に今思っていることとして、 Pythonはモジュールをインポートすることが前提とされているため、モジュールを効率的に利用する方法が学びやすい。そのため、プログラミングの学習には向いている。 PythonにもturbogearsやDjangoがあるので、Railsが無くてもいいのでは? Google app engineの登場で、Python学習に都合の良い場所が出来た。 といったことです。 これらの考え方について皆様はどのように思われますか?逆にPythonやRubyよりもCやPerlをやった方がいいんじゃないかといった意見もありましたら頂けると嬉しいです。よろしくお願いします。 (追記)ちなみに僕は今学生で、就職先ではきっとPHPを使うことになります。(ホントはあまり使いたくないのですが)

みんなの回答

  • junkUser
  • ベストアンサー率56% (218/384)
回答No.2

PHP使いの俺が通りますよ。 >PHPは完成度の低い言語と言っているし。 確かにそうなので、否定はしません。 >PHPは、Railsに取って代わられそうなので これに関しては反論させてください。 スピードに関しては、PHP と Ruby on Rails では比べ物になりません。 また、生産されるコードに関しても Twitter、Ruby on Railsからの脱却を検討か http://slashdot.jp/developers/article.pl?sid=08/05/03/0617242 のように、Ruby本来の目的を達成できないRailsは、品質の悪い業者を生産していると指摘されています。 Ruby そのものは簡潔かつ安全なものが生産されやすい設計となっていますが、その思想がRailsでつぶされているというのが現状です。 Rubyを勉強してから、その思想をPHPに応用するのが私個人の理想です。

noname#94983
noname#94983
回答No.1

>とすると、Rubyを使っても他の人と全く差別化出来ない取り替えの効いてしまうプログラマにしかなれないのでは。 >Pythonの場合は、まだ日本でのユーザー数が少ないこともあり、Ruby,PHPに比べれば自分を差別化することにつなげられるのではないか。 うーん。 そういう考え方もできなくもないかな、とは思うけれど……。 まぁ、普通に考えれば、「利用者が少ない→知られていない→需要がない→使えても評価されることがない」という感じではないかと。極端な話ですが、「私は世界でたった一人のHHL言語のプログラマです」といったとしましょう。HHLとは、HogeHoge Languageの略で、私が開発したものです。利用者は私一人です。さて、これを使えるということが「自身のスキルの差別化」につながると思いますか? これは極端としても、では利用者が100人いたとしたら? 1000人いたら? 果たしてどの程度評価されるでしょうか。 Rubyも確かに広く使われていますが、「Rubyが使える」よりも、「Javaが使える、C++が使える」という人のほうが高く評価されるのが現実でしょう。もっとRubyが広まれば、Rubyプログラマも同じように高く評価されるでしょうが、少なくとも「あまり使える人がいない」ということが理由でその人の能力が高く評価されることはそれほどないでしょう。 やはり、広く使われている言語が使える、ということのほうがスキルとしては評価されます。「それでは差別化がはかれないのでは?」と思うかもしれませんが、それは間違いです。その人の評価とは、「他の人が使えない言語が使える」ということだけでなく、「この言語については、この人ほど使いこなせる人はいない」という評価も非常に重要なはずですよ。 個人的には、まずRubyを極めることをお勧めしたい、かな。「中途半端に使える言語がたくさんある」という人は、個人的にはあまり評価しません。結局、どれも役立たずと思えるからです。それよりも、「この言語に関しては安心してこの人に任せられる」という人のほうが高く評価できます。実務に使えるのはこのような人だからです。そして、そういう人であれば、いざ新しい言語を習得するというときにも簡単に覚えて使いこなせてしまったりするものです。 >就職先ではきっとPHPを使うことになります。 だったら、今からPHPを極める、というのが一番だと普通は思うけど……。PHPは、中途半端なプログラマが一番多い言語(笑)なので、本格的に使いこなせる人は貴重だと思うので。

teshi1107
質問者

お礼

回答ありがとうございます。 おっしゃられてる通り、広まっている言語を誰よりも上手く使えるといった方が重要そうですね。うーん、やっぱりRubyをやった方がいいのかなぁ。 PHPは、Railsに取って代わられそうなのであまり勉強する気が起きないんですよね。まつもとゆきひろさんもPHPは完成度の低い言語と言っているし。実務経験が無いので勝手な予想をしているだけではあるんですが。

関連するQ&A

  • RubyとPython覚えるならどっち?

    PHPを覚えてきたので、次にRubyかPythonのどちらかを勉強しようと思っています。本当は両方勉強した方がいいんでしょうけど、一気に勉強するのは大変なので、どちらか片方をやりたいと思っています。いろんなサイトで比較をされていますが、RubyはPythonに比べて実行速度が遅いとか、世界的なシェアではPythonの方が上、しかしRubyは国産でマニュアルも沢山ある。うーん、どっちを選択したらいいか迷います。たぶん、どちらもやれることは余りかわらないような気がします。ただ実行速度は少し気になります。 使う目的は今は特に決まっていません。もう一つくらい言語を取得したいというくらいの気持ちです。よろしくお願いします!

  • プログラミング言語、Pythonなどについて

    プログラミングスクールに通いプログラミングを習いたいです。言語を決めているとこですが、単に需要があったり稼げるというのを目にして安易な理由ですがPythonに興味があります。しかし、Pythonが主とするAIの世界は難しく地頭も相当よくないとききました、PythonやAIに特化したスクールもありましたが、転職保証するサービスはないようですが就職はできるでしょうか。これまた安易な考えですがいずれ独立したいですが、調べたイメージではAIの仕事はチームプレイなイメージがありますが、仕事は簡単には舞いこんでこないでしょうか。もちろんどの言語も甘くないでしょうが、まずは就職するにしても独立するにしても、 PythonやらAIが特に難しいならまだ比較的案件が多そうな他の言語(Ruby、PHPなど)にしようかとも考えてますがどうでしょうか。また、PHPやRubyならまだ可能性や案件は多いでしょうか?体験談や知識、意見を聴きたいです宜しくお願い致します。

  • Ruby on Railsの学び方

    プログラミングを全く学習したことがない人がRuby on Railsという言語をマスターすることはできますか?また、どのような方法で学べばいいのでしょうか。

  • Perl, Ruby, Pythonいずれかの習得

    私は普段、 C, C++, nasm を使ってプログラミングしています。 最近(主にテキスト等の処理のために)スクリプト言語を習得しようと思いたち(C++のboostでもいいんだけど)、どれがいいかと悩んだ結果、タイトル通り Perl, Ruby, Python のどれかがいいという考えに至りました。 一つ一つの言語としてのメリット、デメリットはあると思いますが、この3つに関しては至るところで議論されていますし、五十歩百歩というのが結論のようです。 そこでこれらの言語をお使いの方々から現在 CやC++ を主に使っている人間が最も習得しやすいとおもわれる言語はこの3つのうちどれかについてご意見賜りたくおもいます。 よろしくお願いします。

  • python を使って SNS 作成

    現在、pythonを学習中のプログラミング初心者高校生です。初級者にわかりやすいとのことでpython勉強し始めました。しかし、スクリプト言語にはphp perl rubyなどがあるので僕の選択肢が正しかったのか不安になってきてしまいました。 とりあえず今のところpythonとhtml,cssの勉強をしています。その後javascriptなどを学ぶつもりです。 そこで質問があります (1)Pythonを使った場合sns作成の、最善な方法(直線的に、どの言語を学び具体的にどのように作っていくべきか) (2)そもそもpythonではなくそれ以外のスクリプト言語の方がSNSを作るのに向いているのか  またその場合どのような手順で進めるべきか *僕が作りたいのはアメーバピグのようなゲーム要素は取り入れないつもりです どうかご教授宜しくお願いします!

  • Perl・Python・Rubyのどれがおすすめ?

    小さいプログラムであればコンパイラ言語より簡単に作成できると聞いたので、インタプリタ言語を一つ習得しようと思っているのですが、Perl・Python・Rubyのうちどれを選ぼうか悩んでいます。 私は現在、情報系学科の大学生で、今までにPascal、CASLII、C、Perl、Javaを習いました。どれも課題をこなすために使った程度で、どれも1年以上継続して利用していません。 以下が、それぞれの言語に対する認識です。初心者の意見なので間違っていることが多いかもしれません。 [Perl] -長所 ・一度勉強しているため、勉強し始めやすい。 ・習い始めるにあたり、一番初めに読もうと考えている「初めてのPerl 第5版」の評価が高い。 ・参考となるものが多い。 -短所 ・ソースが見にくいと聞いたことがある。 [Python] -長所 ・Perlより後にできた言語なので、Perlより洗練されてて高機能? ・Perlとは違い、同じことをするプログラムのソースは似ると聞いたことがあり、こっちの方が使い易い? -短所 ・Perl同様、Pythonを始めるなら一番最初に読もうと思う「初めてのPython 第3版」の訳が悪いという噂がある。また、「初めてのPerl」に比べると、ページ数が異常に多い。 Rubyについては聞いたことがある程度でほとんど知りません。 また、コンパイラ言語としてはC#を習得しようかと考えています。 以上から、Perl・Python・Rubyのうちどの言語を習得するのがいいと思いますか?個人的な意見でも構いません。理由を詳しく書いていただけると、選択の参考になるのでありがたいです。 できるだけたくさんの意見が聞きたいので、様々な回答をお願いします。

  • pythonでコーディングされてる有名なサイトって

    pythonでコーディングされている有名なサイトってありますか? 来週からエンジニアとして働く者です。未経験ですが、会社でpythonをすすめられ、現在勉強しております。Rubyでありましたらcookpadなどがぱっと浮かぶのですが、pythonといったら何か有名サイトがあるのかぱっと浮かびません。 あまりマイナーな言語でありましたら、今後pythonを勉強していく意欲がでず、Rubyをやっていきたいと伝えようか悩んでます。(pythonよりRubyの方がベンチャー企業で使用しているイメージがあります) 未経験のため、わがままを言える立場ではありませんが、 需要の低い言語を勉強していくのもどうかと思います。 会社からはJAVAやPHPではなく、今後需要のあるRUBYもしくはPythonのエンジニアになってほしいと言われてます。 但し、RUBYはすぐに席がないため、Pythonでお願いしたいという経緯が御座います。 ご意見頂けますと幸いです。 よろしくお願いします。

  • Perl > Pyrhon || Ruby

     Perlユーザーですが、PythonかRubyに乗り換えようかと考えています。  あの有名なPerlのプログラミング哲学(怠慢、短気、傲慢)は好きなのですが、最近はPerlは怠慢が足りないのではないか(笑)と思ってきています。  無駄にカッコが多いこと、サブルーチンに参照渡しするときに「\」をいちいち要求する、変数の前に記号をつけないといけない、構文の最後にセミコロンが要求される、また日付データが配列ではなくてはいけない、などの不満によって段々と短気になってきました。  CPANモジュールも大好きだったのですが、モジュールの作者によって変数の名前のつけかたが違ったりするのが(大文字で始まるものや小文字で始まるものが混じっている)統一性がなかたりする点は、無駄に頭を使わなくてはいけない気がします。Pythonライブラリをざっくり見るかぎりですと、さすが禁欲僧と言われているだけあって  例外処理に柔軟性がある点もすばらしいです。  プログラミングをしたころはPerlの自由さが好きだったのですが、最近は整合性や読みやすさなどを重視するようになってしまって、その点はPythonやRubyのほうが優れている気がします。速度の点ではPerlに分があるようですが、人間が書く速度という点ではPythonやRubyのほうがよい気がします。  特に「怠慢」という点からコメントをいただけないでしょうか。  もしも、ますます「怠慢」ができるのであれば、必要となる勉強時間も惜しまないつもりです。

  • プログラム言語を学びたいが実用的なのはどれでしょう

    Webサーバをたてて、CMSとしてWordpressなんかを使いたかったのですが、既存のDBからデータを取り出すのにどうやっていいかわからなかったので、作ってしまおうと思ったのがそもそものきっかけですがプログラミングそのものにも興味があります。 さしあたってやりたいのは、SQLクエリの結果をWebブラウザに表示させることで、このためにPHPではなくRubyもしくはPythonを選択する利点はありますでしょうか?実務で重宝するVBAはできるので、今度はPHPの勉強を考えていますが、 実はこのふたつの言語を選択する理由が分かりません。どちらも初心者向けの言語だと聞きます。ただ一般的にこれらで何をするのでしょうか?テキスト加工やファイル加工なら、自分にはVBAで十分です。 小規模Webアプリの構築をしたいのならPHP一択ですよね。最初はRubyおよびRailsも考えましたが一から学ぶならPHPの方が目的実現まで速いと感じたのでPHPを考えています。 なんちゃってWebプログラマにRuby/RailsもしくはPythonの利点を教えてください。

  • WindowsでPythonで外部コマンドを動作させる時はどうしているのでしょうか?

    Webページの作成をPHPからPythonに書き換えようとしているのですが、 PHPの shell_exec関数がPythonに見当たらないので os.getstatusoutputを使おうしたのですが、Linuxでは動作し、Windowsでは正しく動作しませんでした。 最近まで、日本でPythonがはやり、元々Rubyより前に英語圏で使い続けられたものなので、すごいと思っていましたがWindowsで動かない関数があるとは思ってもみませんでした。 皆さんは、Pythonで外部コマンドを動作させる時はどうしているのでしょうか? このように、LinuxではOKでWindowsではアウトというものは他に何かあるのでしょうか? Pythonに期待していたのですが、今はPHPのままでプログラミングします。

専門家に質問してみよう