Matz(まつもとゆきひろさん)の講演に行ってRubyの可能性を感じたよ


こんにちは。Tomoyuki(@tomoyuki65)です。

Rubyの生みの親である、まつもとゆきひろ(通称Matz)さんをスピーカーに迎えたイベントの抽選に当選したので参加してきました。

⇨イベント説明はコチラ

 

この記事では、このイベントの内容について簡単にまとめます。

 



1.Matzが語る!Rubyの5年後、10年後のミライ

最初はRubyの未来をテーマにした話です。

Matzは以下のように語りました。

 

結論として先のことはわからないが、生産性を高めることが問題の解決に繋がると考えている。

そして、プログラマーを幸福にすること(自身もプログラマーなので)を目指しているので、より簡単な記述でやりたいことが出来るようになっていくのではないか。

 

また、データサイエンスの分野ではPythonというプログラミング言語がよく使われている点については、以下のように語っています。

Rubyも追いつこうと頑張っているが、開発規模などの違いもあり追いつくのは厳しい。

ただ解決策の一つとして、RubyからPythonを使えるようにする取り組み(PyCall)があるので、そちらで代替え出来ればと考えている。

 

Rubyは国産のプログラミング言語で、開発者の顔が見えるというのがいいですね。

プログラミング言語を便利な道具として使えるように毎年アップデートされているので、今後も期待していきたいです。

また、データサイエンス分野ではPythonに追いつくのは厳しいようなので、Ruby側でPythonの豊富なツールを使いこなせるように出来るかが鍵になりそうです。

やはりデータサイエンス分野をやっていきたい方は、Pythonを学ぶべきですね。

 

2.業務基幹システムの開発におけるRubyの素顔と新たな一面

次は今回このイベントを主催した株式会社ビジネスバンクグループが開発している業務管理システム(ALL-IN)をRubyで開発した話です。

国産のシステムを世界に売り出したいという思いから、国産のプログラミング言語のRubyで開発することに決めたそうです。

 

Rubyで大丈夫なんですか?(通常はJavaやC++というプログラム言語で開発することが多いため)

 

とよく言われていたそうですが、実際に開発してみてのRubyで開発するメリット・デメリットについてお話しされていました。

 

Rubyのメリット・デメリット

メリット
 ⇨ 柔軟性と試行錯誤のしやすさ

デメリット
 ⇨ パフォーマンス

Rubyはアジャイル開発(実際に物を作ってユーザーに使用してもらいながら、最終的に仕様を固めていく開発方法)でプロトタイプの作成に向いているそうです。

今まではプロトタイプはRubyで開発し、その後JavaやC++で本番用のシステム開発をすることが多かった。

ただ、最近はTwitterやクックパッドがRubyで開発されているように、プロトタイプからそのまま本番用のシステムに出来るようになったとのこと。

 

パフォーマンス面については、RubyとJavaやC++などを単純に比較(何十万回のループ処理など)した場合は確かに何倍もの差があるのは事実。

ただ、毎年Rubyのパフォーマンスも改善していることやスケーラビリティ(システム規模の変化に柔軟に対応できる度合い)が高くなっているため、基幹業務システムを開発しても問題ないそうです。

基本的にボトルネックになっているのは、ネットワークかデータベース周りのため、Ruby自体が遅いということは感じないと開発者の方もおっしゃっていました。

 

私もOracle EBSというERPパッケージに関する基幹業務システムの開発に携わっていたので、Javaが主流なのは知っていましたが、Rubyでも開発できることに驚きました。

Rubyで開発できるなら、ちょっと就職活動してこようかな・・(笑)

 

Rubyで開発するにあたって苦労したこと

Rubyで開発する際に一番苦労したのは採用活動とおっしゃっていました。

やはり、まだまだRubyエンジニアは少ないので苦労しているそうです。

今もエンジニアを募集しているみたいでした。(話こないかな・・・(笑))

 

確かに、私も転職活動でRubyを扱っている企業を探していましたが、ほとんどなかったので、まだまだ少ないんだなと感じていました。

これから徐々に増えていくと思うので、今からでもRubyを学んでおくのはアリなんじゃないかと思ってます。

 

QAで印象に残った話

質問者
採用活動で未経験の学生さんがよく来ており、Rubyを教えるためのコツなどがあったら教えた欲しい。
Matz
私自身プログラミングを教わったことがなく、遊んでいたら出来るようになっていたので、教え方については正直わからない。(笑)

ただ、Railsチュートリアルなどで実際にプログラミングをやってもらい、万能感(自分でプログラミングしてコントロールできた達成感のようなもの)を感じさせながら進めていくのが、成長に繋がっていくのではないか。

 

やはり、プログラミングだけに限らないですが、自分が楽しいことを積み重ねて継続してやっていくことがとても大事なんだなというのがわかりました。

 

何事も積み重ねて、専門性を高くしていくのが重要ですね。

 

まとめ

  •  Rubyは生産性を高め、プログラマーを幸福に出来るよう、今後も改善に取り組んでいく。
  •  Rubyでも基幹業務向けのシステム開発は可能で、毎年パフォーマンスも改善している。
  •  まだまだRubyエンジニアは少ないので、今から学んでも遅くはない。
  •  自分が好きなことの積み重ねて専門性を高めるのが重要

 

今回のイベントでMatzさんや開発者の生の声が聞けたので、参加できてとても良かったです。

そして、Matzさんの講演はとても楽しかったので、また機会があれば聞きに行ければと思います。

 

The following two tabs change content below.

Tomoyuki

SEを5年経験後、全くの未経験ながら思い切ってブロガーに転身し、月間13万PVを達成。その後コロナの影響も受け、以前から興味があったWeb系エンジニアへのキャリアチェンジを決意。現在はWeb系エンジニアとして働きながら、プロゲーマーとしても活躍できるように活動中。








シェアはこちらから


おすすめのゲーミングPCまとめ

近年、eスポーツという言葉が浸透し、ゲーミングPCの需要も増えましたが、「ゲーミングPCはどう選べばいいの?」という人も多いのではないでしょうか。そんなPC初心者でも迷わず選べるよう、おすすめのゲーミングPCをご紹介します!


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です