アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

RubyKaigi初日レポート

こんにちは、endoです。

今回は「RubyKaigi2016」に参加したレポートになります。 当社では、RubyKaigiの費用の「チケット代」「交通費」「宿泊費」「懇親会」は全て会社で負担していただきました。 このような対応をしていただいた会社と、出張している間に業務を行ってくれたチームメンバーに感謝です!

では、初日のレポートを行っていきます。 なお、講演は英語が多く、内容を把握するのに苦戦しました(´・ω・`)

英語は重要だ・・・orz

Ruby3 Typing

発表者:Yukihiro “Matz” Matsumoto

Ruby3の目指す方向性

  • パフォーマンス
  • 並列処理

今回はこの中でも「型」についてのお話でした。

ダックタイピング

Rubyにはダックタイピングと呼ばれる考え方があります。 「アヒルのように歩き、アヒルのように鳴くものはアヒルに違いない」という考え方です。 ダックタイピングは柔軟性が高く、期待される振る舞いのみを考えればいいです。 期待される行動は、自分たちの頭の中にあります。

動的型言語のデメリット

実行するまでエラーかどうかがわからない。 エラーメッセージが親切ではない。 エラーが起こるかどうかわからないので、テストでカバーするようになっている。 静的型言語はメソッドに型が書かれているので、どのような値が必要かどうかがわかる。

型を導入する方法

型はほしいけど、型を記入することは避けたい。 現状の型推論ではない方法での、型推論を導入する。 100%の精度はできないが、0→80%までの精度になれば、ないよりはマシになる。 失敗した場合は、元に戻せばいい。

リリース時期

ケネディ大統領が月に行くという目標を定めてから、実現した。 目標は必要。 東京オリンピックが始まる頃にはリリースしておきたい。

dRuby in the last century.

発表者:Masatoshi SEKI

RubyとWebをつなぐ

HTTPをアプリに埋め込むことを楽しんでいた。 RubyとWebをつなぐ作業をしていて、翻訳作業をすることが嫌になってきた。

dRubyの紹介

分散オブジェクトシステム プロセス越しにメソッドが呼べる プロセス間でオブジェクトが送れる

Welcome to haconiwa - the (m)Ruby on Container

発表者:Uchio KONDO

haconiwa

mRubyで作成したコンテナ技術 もともとはCRubyで作っていたがsyscallsの限界があり、mRubyに書き換えた。

haconiwaを作った背景

docker/lxcでバグに遭遇したが、なかなか理解できなかった。 コンテナ技術を理解するためにhaconiwaを作成。

A proposal of new concurrency model for Ruby 3

発表者:Koichi Sasada

rubyの並列処理について

rubyの並列処理はGVL(Giant VM Lock)の関係でI/O待ちが発生している このため、rubyの並列処理は遅いということがよく言われる

guild

rubyの並列処理を早くするための新しい概念 GVLを解放することで、並列処理を早くするようにする

Isomorphic web programming in Ruby

発表者:Yoh Osaki

railsでreact likeに書けるようにする

jsが嫌いなので、rubyでreactを使いたいということで、作成 デモ講演を披露してくれました

Scalable job queue system built with Docker

発表者:Takashi Kokubun

Job Queueシステムを作成

カジュアルにJobが実行されていて、一元管理ができていなかった。 一元管理をするために、新しいJob Queueシステムを作成した

懇親会

この後は懇親会がありました。 個人的には海外の参加者の方と話をしてみようと思い、海外の参加者の方に話しかけていました。 ただ、日本語が普通に喋れる方だったので、日本語で会話をしていましたorz

海外の参加者の方との交流も図れるのがいいですね!

ちなみに自分がお話をした海外の参加者の方は、普段使う言語がPython・Goでした(`・ω・´)

こういう方でも参加しているのに驚きました。

初日感想

ノベルティが配布され、自分はステッカーを漁りまくっていました。 ブースではコーヒーが飲み放題で、交流も図れるので情報交換ができました。 このような対応していただいたスタッフの皆様に感謝です!

コミッターの方々は当たり前のように英語で話をするので、レベル差を感じました。 なんで英語そんなにできるんだ・・・

あと、見ている層が違うんだなーと感じた1日でした。

現場からは以上です。