ヘッドライン(RSS)

Rubyは時代遅れ?開発者はどの言語を学ぶべきか

日本のソフトウェア技術者、まつもとゆきひろ氏によって作られたプログラミング言語「Ruby」。その出自から日本で人気が高いのはもちろん、「Ruby on Rails」というキラーフレームワークが爆発的に広まったことで、全世界的な知名度をも獲得しました。

ところがここ数年Rubyの人気は低下傾向にあり、以前とは状況が少し変わってきているようです。

テックメディアTechRepublicのライターAlison DeNisco氏は8月7日、「The death of Ruby? Developers should learn these languages instead」という記事を公開。Rubyの人気が低下している現在、開発者は別のプログラミング言語を習得したほうが良いという趣旨の考察を展開しています。

同記事はRubyの人気低下の証拠として、Indeedによる求人数でRubyの人気が9番目にまで低下しているとのこと、IEEE Spectrumのプログラミング言語ランキングで、Rubyの順位が2014年の8位から2017年の12位まで低下していること、さらにCoding DojoでRubyコースが終了したことなど、幾つかの事実を挙げています。

またコンピューターサイエンス分野で関心が低いことや、Twitterを始めとした巨大企業がRailsの採用をやめたこと、Stack Overflowで関心が低下していることなども、Ruby人気が低下している具体例としてリストアップしています。

同記事では「Python」と「JavaScript」を学ぶべき言語として推奨しています。

Pythonは、Web開発やデータサイエンス、その他分野でここ数年急激に広まっており、Rubyと似たシンタックスを採用している部分もあるため、Ruby開発者にとっても習得しやすいプログラミング言語であると説明されています。

またJavaScriptは、全世界で最も使用されている言語であり、Node.js、AngularやReactといった強力なフレームワークによって、バックエンドからフロントエンドまで幅広くカバーした、価値のあるプログラミング言語であるとされています。

IEEE Spectrumの2017年ランキングでもPython言語は1位となっていてこの主張はある程度納得できるところかもしれません。

同様に、JavaScriptの応用範囲の広さも、誰もが認めるところだと思います。
http://www.softantenna.com/wp/software/death-of-ruby/

2: 名無し@webensoku 2017/08/10(木) 14:48:26.66 ID:RyBkjXFM
パールでいいじゃん

7: 名無し@webensoku 2017/08/10(木) 14:56:04.78 ID:/fu1xqRD
>>2
ルビーより前に氏んでるぞw

93: 名無し@webensoku 2017/08/10(木) 19:35:50.54 ID:TZg8fl7Z
>>2
Perl糞言語だと思うけど好き。
正規表現が楽だし、何より速いんだよな。
ffmpegの標準出力をそのまま転送とかもできる。

どうせ処理はほぼjsでやるならありだと思う。

3: 名無し@webensoku 2017/08/10(木) 14:48:26.98 ID:c0w7bv9h
これからは無難にpythonかな

4: 名無し@webensoku 2017/08/10(木) 14:52:35.78 ID:s+y7aadm
RubyよりCrystal

6: 名無し@webensoku 2017/08/10(木) 14:53:14.08 ID:s+y7aadm
結局日本初はガラパゴス

8: 名無し@webensoku 2017/08/10(木) 14:56:15.94 ID:gnblVXDh
バックエンドはGo、フロントエンドはAngular(TypeScript)が最適解

9: 名無し@webensoku 2017/08/10(木) 14:56:54.69 ID:vF1Ce/Jp
まつもとゆきひろが楽天に入ってしまったのがruby凋落の原因。
二足の草鞋では限界がある。
所属先がgoogleやamazonみたいに技術革新に積極的なところならまだ良かったが、
楽天は対極にある企業だし。

16: 名無し@webensoku 2017/08/10(木) 15:21:33.57 ID:5GLUs2df
>>9
他にも選択肢あったろうに、よりによって楽天を選ぶw

あのサイトの中の人になろうと思うってのは、よくわからんな。

11: 名無し@webensoku 2017/08/10(木) 15:02:44.95 ID:vN+pxyyL
Ruby = 遅い というイメージが強いからそれが影響しちゃってるのでは?

12: 名無し@webensoku 2017/08/10(木) 15:04:14.92 ID:mktq16k1
python3 を選んでよかったw
あの時はRubyとどっちにしようかなと確率半々だったwwwwww

31: 名無し@webensoku 2017/08/10(木) 15:51:57.48 ID:7C+I1IhI
>>12
IT技術者なら一年に1つは新しい言語を学べ

15: 名無し@webensoku 2017/08/10(木) 15:14:36.57 ID:VT08wEAj
みんなRailsを使いたいだけだからね

17: 名無し@webensoku 2017/08/10(木) 15:22:39.52 ID:p/bOQMb8
まあPythonだわな

18: 名無し@webensoku 2017/08/10(木) 15:22:54.17 ID:s+y7aadm
ブロック構造を
 制したものが勝つ
と思う。

19: 名無し@webensoku 2017/08/10(木) 15:24:45.34 ID:s+y7aadm
> Twitterを始めとした巨大企業がRailsの採用をやめたこと
Twitterは今もscala?

20: 名無し@webensoku 2017/08/10(木) 15:27:32.09 ID:L28m4TV/
Ruby信者が気持ち悪いのでpython選びました

21: 名無し@webensoku 2017/08/10(木) 15:30:46.32 ID:cISBHO3D
javascriptはウザいんでいつも切ってる

22: 名無し@webensoku 2017/08/10(木) 15:32:10.30 ID:V5FUJ/ZY
Rubyやろかなと思ってたら環境めんどくさそうで
Railがどうとかで
そしたらPythonが流行り出して
こっちかなと

23: 名無し@webensoku 2017/08/10(木) 15:35:59.22 ID:tUSQdEno
pythonなんて以前からあったのにな
テキスト処理程度ならPerlでいいわ

27: 名無し@webensoku 2017/08/10(木) 15:43:40.79 ID:uRVLyDoc
何を選んでもプログラムなんて、演算、分岐、繰り返しを書くだけだろ。
大したものじゃないよ。

29: 名無し@webensoku 2017/08/10(木) 15:45:23.59 ID:0BCMPeRw
>>27 UIなり3D表示を含んだりしたらGPU叩いたりもするし、今流行りのAIなんかもGPU
使ってるからどれを使うかってのは大きな選択肢だよ

34: 名無し@webensoku 2017/08/10(木) 15:58:02.70 ID:0BCMPeRw
まあただのJavascriptの固まりであるNode.jsでもBluetooth叩ける時代だから言語選び
は楽になってきているとも言えるけど、もっと込み入ったことしようとするとその言語が
内包しているライブラリが結局Cだったりしてで、最後はCで書こうかってことになるのよね
OpenMaxとかでデコーダ叩いたりとかももっと楽にならないかねと

35: 名無し@webensoku 2017/08/10(木) 16:02:31.52 ID:rp3FS80V
JavaScript=IT土方言語ってイメージしかないんだけどどうなの?

36: 名無し@webensoku 2017/08/10(木) 16:04:02.24 ID:0BCMPeRw
>>35 ハードウェアも叩けて組み込みでも使えるようになってきてるからねえ
言語がどうこうではなくなってきてるってことだと

37: 名無し@webensoku 2017/08/10(木) 16:06:21.81 ID:rp3FS80V
>>36
組込みでJavaScriptなんて使うの??
んーC++ですらあまり普及していないのにJavaScriptなんて
誰も使わないんじゃない?
最近組込みの方もリソースに縛られる事少なくなったけどJavaScriptだと
C++より速度遅いんじゃない?

39: 名無し@webensoku 2017/08/10(木) 16:08:17.16 ID:0BCMPeRw
>>37 上に書いたNode.jsね
ラズパイとかLinuxだと当たり前に使えるからむしろそれが流行りでわざわざ自分で一から
書かなくて良いからね
速度は今はハードウェアの速度が十分保証されてるから全然気にならないよ
ていうかライブラリはCだから実質速度は問題にはならないと

45: 名無し@webensoku 2017/08/10(木) 16:16:13.48 ID:rp3FS80V
>>39
俺もあまり速度は気にならないんだけど、たまーにμsecレベルでアレコレしないと行けない時があって
C++だとやっぱ遅いよね~って思う事がある

38: 名無し@webensoku 2017/08/10(木) 16:06:47.66 ID:jMR9QqLL
javascriptはムズイぞ。javaの3倍はむじゅい
素人でもクロージャあたりまでやったらあってなるやん

70: 名無し@webensoku 2017/08/10(木) 17:04:34.82 ID:YpAI6ACg
>>38
ムズイというより、イベント駆動の考え方に慣れることが出来るかどうか、みたいな。

40: 名無し@webensoku 2017/08/10(木) 16:09:35.71 ID:jMR9QqLL
組み込みって何やるんや?

41: 名無し@webensoku 2017/08/10(木) 16:09:57.67 ID:0BCMPeRw
>>40 ハードウェアを含んだ制御をするってことやね

43: 名無し@webensoku 2017/08/10(木) 16:15:40.66 ID:FeKgSeHf
いまから覚えるならなにがいい?

46: 名無し@webensoku 2017/08/10(木) 16:16:36.55 ID:jMR9QqLL
>>43
php

ブログチュートリアルやれや

48: 名無し@webensoku 2017/08/10(木) 16:18:33.96 ID:P3uy4uMk
良くも悪くもphpが安定している

49: 名無し@webensoku 2017/08/10(木) 16:18:58.82 ID:P3uy4uMk
Rubyは日本でしか流行っていない。

52: 名無し@webensoku 2017/08/10(木) 16:22:51.58 ID:jMR9QqLL
正直c++が使えないならともかく
どっちも選べて無印を選ぶシチュエーションがわからん。

57: 名無し@webensoku 2017/08/10(木) 16:35:02.75 ID:0BCMPeRw
>>52 Androidでネイティブコードを使いたいってときSTLが端末毎に異なるってんで
できるだけ使いたくないな~って状況はあったかな
やっぱりプラットフォームが何を積んでるかでの言語選択はプラットフォーム分裂時代
としてはあるのかなと

53: 名無し@webensoku 2017/08/10(木) 16:24:20.19 ID:c4CTBO6x
文法的には ruby がキレイなのはキレイだな
python はインデントが気持ち悪い

55: 名無し@webensoku 2017/08/10(木) 16:26:44.02 ID:mktq16k1
>>53
haskell や lips はやらないのか? 後者はインデントはEmacsがやってくれるだけで構文にはかかわらないが

64: 名無し@webensoku 2017/08/10(木) 16:55:25.70 ID:X2bZRVcI
自分はサンデープログラマーだからいろんな言語をつまみ食いしてるけど
本職にしてる人ってそんなにツブシが効かないものなの? (´・ω・`)

65: 名無し@webensoku 2017/08/10(木) 16:58:47.11 ID:rp3FS80V
>>64
今までの遺産があって、それを使い回すから業務で色んな言語を使い回す事はあまり無いよ
うちなんてほぼC++でたまにCだよ
Rubyとかはテストジグ作るときに使うくらい

71: 名無し@webensoku 2017/08/10(木) 17:08:10.80 ID:YpAI6ACg
>>65
そういうのを含めると、golangやswiftはなかなかいい落し処じゃないかと思う。
Webスクレイピングなんてgoだと標準のライブラリだけでも結構出来ちゃうしね。

69: 名無し@webensoku 2017/08/10(木) 17:04:27.35 ID:c4CTBO6x
違う文法を使いこなすというだけなら
言語を移るのもそれほど大変じゃないかもしれないけど
関連するライブラリやらツールやら
エラーメッセージの出方と対処法やら
もっとこまかなクセみたいなものから
そういう全体の知識を含めて考えると
言語を移るのもそう簡単じゃなさそうだよね

91: 名無し@webensoku 2017/08/10(木) 19:34:46.82 ID:kYCvseHo
どの言語を学ぶべきかとか言ってるようじゃただのマニアだよ
言語なんて手段なんだから
仕事なら目的のために手段を選ぶな
手段のために目的を選ぶのは自作野郎のすることだ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

ヘッドライン(RSS)