TES Blog

株式会社テクニカルエンジニアリングサポートに所属する社員が、自身が携わるテクノロジーやイベントに関する情報を発信しています。

RubyWorld Conference 2019 に行ってきました!

はじめに 📌

TES に入社して5年目となる、橋本に勤務する橋本です。

橋本はこの季節とても寒いです(二重の意味で笑)。

普段は Web アプリケーションのエンジニアとして Ruby 、 PHP 、Vue.js などを使って開発しています。

前置きはさておき、2019年11月07日(木)と11月08日(金)に開催された「RubyWorld Conference 2019」に参加してきました!

開催してからだいぶ時間が空いてしまいましたが、講演を聞いての感想などをお伝えできればと思います。

いざ島根へ 📌

朝03時起きで羽田空港に向かいました…前日もお仕事だったのでだいぶしんどかったです…。

社長、常務、私というなんとも息苦しいメンバーで、いざ島根へ向かいます。

f:id:h-marei:20191225222717j:plain
羽田空港

出雲縁結び空港に到着しました!!

(良いご縁がありますように…🙏🏻)

f:id:h-marei:20191225223133j:plain
出雲縁結び空港

そして、「RubyWorld Conference 2019」の会場である島根県立産業交流会館 「くにびきメッセ」に到着しました!!

f:id:h-marei:20191225223519j:plain
くにびきメッセ内 会場受付前

RubyWorld Conference 2019 📌

ここからは、実際に講演を聞いての感想などをお話します。

大変恐縮ではあるのですが、全ての講演については書くことができないので、まつもとゆきひろ氏の講演をメインとして、その他の方々が行った講演に関してはまとめさせていただきます🙇🏻‍♂️

まつもとゆきひろ氏による基調講演

Ruby が世界に認知されるまで、10年かかったと言っていました。

その中で、成功するモノを作るのに大切なことを4つ語っていました。

それぞれについて、私の思ったことや考えを添えつつお話しようと思います。

1. Motivation

何かを作るのに、モチベーションってすごく大事ですよね。

それこそ、 Ruby のように世界に認知されるまでに10年もかかるものだと、何らかのモチベーションが無いと続きません。

個人開発で何か作る時には、作りたいものを作るのでモチベーションを保ちやすいですが、業務になるとそうもいきません。

その中でも、何かしらのモチベーションに繋がるようなことを少しでも見つけて、業務に関わっていきたいと思いました。

(↑ちょっと「小並感」感がありますが…🥴笑)

2. Target Audience

何かモノを作るのにあたって、誰がそのモノを利用するのか想定のユーザーを考える必要があります。

でなければ、作られたモノは何のために生まれてきたモノなのか分かりません。

基調講演の中で印象的だったのが、想定のユーザーを考える必要はあるが、空想のユーザーを作ってはならないことです。

たしかに、空想上で生まれたユーザーは空想でしかないので、現実にはいません。

モノを作っても現実のユーザーには使われないのです。

3. Community

基調講演を聞いていて、 Ruby の特に強い部分はこのコミュニティだと思いました。

オープンソースにしていたことによって、様々な人(世界各国)が集まり、結果としてコミュニティが広がったと話しています。

また、完璧なモノではない方が人が集まるとも言っていました。

たしかに、完璧なモノには手の出しようが無いですが、完璧ではないモノなら「あーじゃない、こーじゃない」とコミュニティの中で議論しながら活性化していきそうですよね。

GitHub で公開されてるオープンソースの Issue などで、よく議論している様子を見ますが、自分もその中に混じって議論したい気持ちになります。

こうした気持ちを持った人が集まり、コミュニティがどんどん広がっていくのかもしません。

ちなみに、コミュニティが広がったおかげで、まつもとゆきひろ氏は Ruby のソースに手を入れてなくて、今では mruby のコミットをしているそうです。

GitHub のコミット履歴を見てみるとその様子が伺えます。

github.com

4. Goal Seeking

何かをするにあたって、目標を決めることはとても大切なことだと思います。

目標がないと方向性が定まらず、設計が崩壊し、将来性が無くなってしまうかもしれません。

Ruby では、バージョンごとに以下のような目標を掲げていると話していました。

Ruby3

  • Performance
  • Concurrency
  • Analysis

Ruby4

  • Faster(より早く)
  • Smarter(より賢く)

※この時に世界初出し情報!

また、このようなことを言っていました。

  • モノを作るのに、予想の超えるモノを考える
  • 人の言うことを聞いてはならない
  • キーフーズ決めは、無謀なことをゴールに掲げる

つまり何が言いたかったのかというと、良いモノを作ろうとする時に、簡単にできるようなことを考えても良いモノはできないということです。

まさにそうだなと思っていて、難しいことにチャレンジする時はたくさんの勉強と様々な挑戦をすると思います。

たとえ目標を達成できなくても、そこまでの過程は必ずモノを良くしますし、自分の成長にも繋がります。

高い目標に向けて進み続けるためには、最初にお話したモチベーションに繋がってくるのかなと思いました。

全体を通して

特に印象に残った2つのテーマについてお話します。

Ruby を活用した IoT

全体を通して講演の数も多く印象に残ったのが、 Ruby を活用した IoT 絡みの講演です。

近年、 IoT を活用したシステムが増えてきていますが、その開発に Ruby を活用できるのは夢が広がります!

前述しましたが、まつもとゆきひろ氏も今は mruby に力を注いでいるようなので、今後のさらなる発展に期待がもてます。

mruby に関しては私自身一度も触ったことがないので、 Raspberry Pi で mruby を動かすくらいのことはしてみたい気持ちです。

我々は Ruby を知らない

どういうことかというと、Ruby を知らなくても Ruby で開発できてしまうということです。

というのも、 Web のアプリケーションを開発するときは基本的に Ruby On Rails で開発をすると思いますが、 フレームワークが優秀であるがために、 ある程度の書き方だけわかっていれば Ruby の知識がなくともアプリケーションを作ることできてしまいます。

私も Ruby On Rails で開発をする時は、 Ruby On Rails で開発をするという感覚の方が大きいです。

ある講演では、「Ruby プログラマ」ではなく「Rails プログラマ」だと表現していました。

質疑応答の際にも、

Q:Ruby だから改善できた内容はなかったのか?

という質問に対し、

A:Ruby というより、 Rails だからうまくいった点が多かった

という回答をしている方がいて、少し複雑な気持ちになったのを覚えています。

それが悪いことなのかと言われるとそうではないのかもしれませんが、言語の本質を知ることはプログラマとして大事なことだと思いますし、 Ruby でできることを把握できていればビジネスチャンスを逃さずに済むかもしれません。

Ruby には「Ruby技術者認定試験」があるので、うまく活用して Ruby の知識を深めたいですね!

(私は Silver しか持ってません…Gold 取らなきゃ…)

さいごに 📌

こういった大きなカンファレンスは初めて参加させていただきましたが、エンジニアとして多くの刺激を受けました。

またこういう機会があれば積極的に参加したいです。

今回の講演や発表資料は「RubyWorld Conference 2019」の公式サイトから見ることができます。

興味のある方は是非見てみてください!

2019.rubyworld-conf.org

余談 📌

レセプションの時に、まつもとゆきひろ氏と名刺交換をさせていただき、ツーショットまでさせていただきました!

残念ながらブログ掲載の許可を頂き損ねてしまったので、代わりに島根観光した時の写真でも貼っておきます(代わりとは)。

f:id:h-marei:20191225230827j:plain
出雲大社 しめ縄

f:id:h-marei:20191225231225j:plain
出雲大社 いなばのしろうさぎ

f:id:h-marei:20191225231420j:plain
松江城

f:id:h-marei:20191225231600j:plain
松江城 天守閣からの景色