クックパッド一同は、RubyKaigi 2019でみなさんにお会いできることを楽しみにしています!

こんにちは! 広報部のとくなり餃子大好き( id:tokunarigyozadaisuki )です。

先月公開した【RubyKaigi 2019 参加者に捧ぐ】福岡で起業した男が本気で書いた福岡グルメまとめ は見ていただけましたでしょうか? 私は、ブログへの掲載はありませんでしたが、福岡の餃子には牛肉をタネに使っているお店があるとの情報を入手したので、食べに行くぞと意気込んでいます。

クックパッド株式会社は、2019年4月18日(木)〜20日(土)に福岡にて開催される RubyKaigi 2019に、Ruby Committers’ SponsorとWi-Fi Sponsorとして協賛します。

Wi-Fi Sponsorに関しては、調達・設計・構築・運用などを、昨年に引き続き @sorah が担当しております。

クックパッドに所属する4名が登壇し、 @asonas@sorah が運営として関わってくれています。

本ブログでは、登壇する社員のセッションのスケジュールや、ブースで行う登壇者へのQ&Aタイム、Cookpad Daily Ruby Puzzles など限定企画の紹介をいたします。RubyKaigi 2019に参加する弊社メンバーは内定者を含め約30名! みなさまと交流することを楽しみにしています。

参加社員一覧

@mirakui, @tapster, @kanny, @takai, @hogelog, @l15n, @ko1, @mame, @hokaccha, @eisuke, @giga811, @riseshia, @inohiro, @ukstudio, @hfm, @davidstosik, @aadityataoaria, @sikachu, @asonas, @sorah, @pndcat, @sankichi92, @kojitaniguchi, @to9nariyui

登壇スケジュール

はじめに、社員が登壇するセッションのスケジュールを紹介します。

1日目 4月18日(木)

  • 14:20-15:00 笹田耕一(@ko1): Write a Ruby interpreter in Ruby for Ruby 3
    本発表では、RubyインタプリタをRubyで記述するために必要となる要素技術についてご紹介します。Rubyで、といっても、コア部分は相変わらずCで書く必要がありますが、組込メソッドをなるべくRubyで置き換えていきたいという話になります。ここで、課題になるのは、(1) Ruby だと呼び出しが遅いかもしれない (2) Ruby だと読み込みが遅いかも知れない、の二つです。本発表では、これらをどのように解決するかについて議論します。
  • 15:40-16:20 遠藤侑介(@mame): A Type-level Ruby Interpreter for Testing and Understanding
    Ruby 3の静的解析技術の1案として、Rubyプログラムを型レベルで仮想的に実行するRuby処理系を提案します。すでに提案されている他の静的解析と異なり、型注釈がなくてもなんとなく検査・推定ができるところが特徴です。仮想的な実行の過程で発見された型エラーの可能性や、メソッド呼び出しの引数や返り値の型を報告することで、ユーザのテストやプログラム理解を支援することを目指しています。本発表では、詳しいアイデアと、他手法との比較、現在どこまで実装できているかなどを説明します。

2日目 4月19日(金)

  • 17:20-18:20 ライトニングトーク
    • 井上寛之(@inohiro): Write ETL or ELT data processing jobs with bricolage.

3日目 4月20日(土)

  • 10:00-11:10
    • Cookpad Presents: Ruby Committers vs the World こちらのお時間では、Cookpad Ltd CTOの Miles Woodroffe がご挨拶いたします。また、笹田耕一と遠藤侑介が司会を務めます。
  • 11:20-12:00 Sangyong Sim(@riseshia): Cleaning up a huge ruby application
    cookpad.com を支える巨大なレポジトリから未使用コードの削除を進めています。この作業は比較的コストが高い割にリターンが見えづらいです。この問題をどういった仕組みで解決しようとしているのかについて、お話しします。 Ruby 2.6 で導入された Oneshot coverage などを利用し、本番で実行されたコードを記録する仕組みも紹介します。

ブース

RubyKaigi 2019にて出展するクックパッドブースでは、福岡県にゆかりがある料理の限定レシピ集をお配りするほか、 @mame@ko1 が考案した Cookpad Daily Ruby Puzzles を一日3問ずつ公開いたします。各問題に最小数の文字を追加し、 "Hello world" を出力してください。

# example
def foo
  "Hello world" if
    false
end

puts foo

早く回答できた方にはCookpad Pad RubyKaigi 2019 Edition など、数量限定で特別なプレゼントをご用意しています。みなさんの挑戦お待ちしております! また、下記スケジュールの通り、登壇者へのQ&Aタイムなどを予定しております。グッズの配布や昨年好評だった豆つかみもバージョンアップして行いますので、ぜひお立ち寄りくださいね。

f:id:tokunarigyozadaisuki:20190415112930j:plain

1日目 4月18日(木)

  • 15:10-15:40 【ブースイベント】午後休憩: Q&Aタイム by @ko1
    この時間は、クックパッドブースに @ko1 がおりますので、1日目 14:20-15:00 Write a Ruby interpreter in Ruby for Ruby 3 に関するご質問がある方は、ぜひこの時間にブースにて、本人に聞いてみてください。

2日目 4月19日(金)

  • 12:30-13:00 【ブースイベント】ランチ休憩: Q&Aタイム by @mame
    この時間は、クックパッドブースに @mame がおりますので、1日目 15:40-16:20 A Type-level Ruby Interpreter for Testing and Understanding に関するご質問がある方は、ぜひこの時間にブースにて、本人に聞いてみてください。
  • 15:00-15:40 【ブースイベント】午後休憩: クックパッド子会社 ウミーベ株式会社タイム
    昨年、クックパッドグループに加わったウミーベ株式会社。ウミーベのオフィスはRubyKaigi 2019の開催地、福岡県福岡市の海辺にあります。本時間には、ウミーベCTO @Nia がブースにおりますので、ウミーベのサービスについてご質問がある方、福岡で働くことに興味がある方はぜひお気軽に話しを聞いてみてください。

3日目 4月20日(土)

  • 12:30-13:00 【ブースイベント】ランチ休憩:Q&Aタイム by @riseshia
    この時間は、クックパッドブースに @riseshia がおりますので、3日目 11:20-12:00 Find out potential dead codes from diff に関するご質問がある方は、ぜひこの時間にブースにて、本人に聞いてみてください。

  • 15:10-15:40 【ブースイベント】午後休憩:Cookpad Daily Ruby Puzzlesの解説
    @mame より、ブースにて三日間に渡って出題した全9問の Cookpad Daily Ruby Puzzles の解説を行います。解けた方も解けなかった方も、考案者からの解説を聞いてスッキリしてください! 

おわりに

クックパッドでは、料理で世界に挑戦する仲間を探しています。クックパッドで働くことにご興味のある方は、お気軽にブースにお越しください。また、会場でクックパッド社員をお見かけの際には、お声がけいただけますと嬉しいです! みなさまにお会いできることを社員一同楽しみにしております。

/* */ @import "/css/theme/report/report.css"; /* */ /* */ body{ background-image: url('https://cdn-ak.f.st-hatena.com/images/fotolife/c/cookpadtech/20140527/20140527163350.png'); background-repeat: repeat-x; background-color:transparent; background-attachment: scroll; background-position: left top;} /* */ body{ border-top: 3px solid orange; color: #3c3c3c; font-family: 'Helvetica Neue', Helvetica, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, Osaka, 'MS Pゴシック', sans-serif; line-height: 1.8; font-size: 16px; } a { text-decoration: underline; color: #693e1c; } a:hover { color: #80400e; text-decoration: underline; } .entry-title a{ color: rgb(176, 108, 28); cursor: auto; display: inline; font-family: 'Helvetica Neue', Helvetica, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, Osaka, 'MS Pゴシック', sans-serif; font-size: 30px; font-weight: bold; height: auto; line-height: 40.5px; text-decoration: underline solid rgb(176, 108, 28); width: auto; line-height: 1.35; } .date a { color: #9b8b6c; font-size: 14px; text-decoration: none; font-weight: normal; } .urllist-title-link { font-size: 14px; } /* Recent Entries */ .recent-entries a{ color: #693e1c; } .recent-entries a:visited { color: #4d2200; text-decoration: none; } .hatena-module-recent-entries li { padding-bottom: 8px; border-bottom-width: 0px; } /*Widget*/ .hatena-module-body li { list-style-type: circle; } .hatena-module-body a{ text-decoration: none; } .hatena-module-body a:hover{ text-decoration: underline; } /* Widget name */ .hatena-module-title, .hatena-module-title a{ color: #b06c1c; margin-top: 20px; margin-bottom: 7px; } /* work frame*/ #container { width: 970px; text-align: center; margin: 0 auto; background: transparent; padding: 0 30px; } #wrapper { float: left; overflow: hidden; width: 660px; } #box2 { width: 240px; float: right; font-size: 14px; word-wrap: break-word; } /*#blog-title-inner{*/ /*margin-top: 3px;*/ /*height: 125px;*/ /*background-position: left 0px;*/ /*}*/ /*.header-image-only #blog-title-inner {*/ /*background-repeat: no-repeat;*/ /*position: relative;*/ /*height: 200px;*/ /*display: none;*/ /*}*/ /*#blog-title {*/ /*margin-top: 3px;*/ /*height: 125px;*/ /*background-image: url('https://cdn-ak.f.st-hatena.com/images/fotolife/c/cookpadtech/20140527/20140527172848.png');*/ /*background-repeat: no-repeat;*/ /*background-position: left 0px;*/ /*}*/