Keynote Speakers

西見 公宏

Rubyが好きすぎる、プログラミングが好きすぎる皆さんに向けて、プログラミングを一生の仕事にする一つの方法として、Ruby/Railsを活用した顧問プログラマーという生き方を8年続けて分かったことから、顧問プログラマーという生き方についてご紹介します。

Speakers

SHIBATA Hiroshi

プログラミング言語 Ruby と RubyGems の脆弱性対応を一例として、OSS に 脆弱性が発見された場合のインシデントレスポンスの初動対応からリリースまでに行ったことを紹介します。

Kazuhiro NISHIYAMA

テキスト処理を得意とする Ruby でチャットボットを作成し運用し続けてたまった知見の紹介として、 チャットボットの面白さや便利さ、作成上の注意点などをお話しします。

安川 要平

世界100カ国・1900道場、日本全国175ヶ所以上に広がる子どものための プログラミング道場『CoderDojo』コミュニティを支える Ruby/Rails 活用事例についてお話しします。

わかば260

リアルタイムゲームにおけるRuby/Railsアプリケーションは高いパフォーマンスを要求されます。 要求パフォーマンスをクリアするために行ったベンチマークやプロファイルのテスト・改善のサイクルを繰り返す手法、 そして改善の中において行った実装や技術選択などについて、得られた知見を共有します。

Pocke

Rubyを`-w`オプション付きで実行したことはありますか? このオプションをつけてRubyを実行すると、様々なRubyの警告が表示されるようになります。 このトークでは、この警告の意味や消し方、警告によって見つかったバグなどを紹介します。 このトークによって世界のRubyコードから警告が減ってくれれば幸いです。

willnet

Railsの機能の一つに、Concernsと呼ばれるものがあります。 app/controllers/concernsやapp/models/concernsに関心事を切り出して配置するものです。 私はフリーランスや技術顧問として多くの会社のRailsプロジェクトに関わってきました。その中で、良かれと思ってConcernsを使ったものの、 そのことによりかえって可読性や保守性を下げてしまうケースをよく見かけています。 これは「Concernsをどのように使うのか」が曖昧な状態でなんとなく使っていることが原因ではないかと思います。 この発表では - Concernsとは何か - Concernsを構成するActiveSupport::Concernとは 何か - Concernsを使うべきでないケースと代替案 - Concernsを使うべきケースについて解説することで 「Concernsを完全に理解した」状態にすることを目的にしています。

KaoruHotate

Railsアプリを作っていて、 「Controllerの見通しをよくする」「Viewにロジックを書かない」といった言葉を聞いたことはないでしょうか。 Fat Controller / Fat Viewは、Modelに処理を移すという手法をとることが多いと思いますが、その結果、Fat Modelという負債を作ってしまいます。 1つのActiveRecordを継承したモデルオブジェクトに大量の便利メソッドと大量の分岐を作ったり、 中身を見ないと何をやっているかが分からないクラスを作ったり。。。 本セッションでは、Fat Modelをリファクタリングして見えてきた、6つのパターンを話します。各パターンのサンプルコードと、 解決できる内容・メリットを、他のプロジェクトにもいかせるように解説します。 サンプルコードは、過去に出会ってきたコードを題材にし、実体験に基づいた修正内容を紹介します。Fat Modelに悩む方の一助になれば幸いです。

Tomohiro Hashidate (joker1007)

Ruby-2.7は最近のリリースの中でも特にCoolな機能が盛り沢山です。 如何にそれらの機能がCoolかということを自作のgemのAPIとその実装を基に紹介します。

yebis0942

Ruby 2.7に向けて、numbered parameter、パターンマッチなどのクールな構文が提案されています。 これらの新しい構文を使って書かれたRubyのコードを古いバージョンのRubyで動作するようにコンパイルする方法について解説します。

Yusuke Endoh

Ruby 3の三大目標の1つである静的解析機能について、現在の計画と進捗を報告します。 Ruby 3では、複数のコンポーネントからなる静的解析ツールチェインが構想されています。 (1)標準的な型シグネチャフォーマット、 (2)アプリケーションコードの型シグネチャを要求せずに緩く検査し、型シグネチャを推定するlevel-1型検査、 (3)アプリケーションコードの型シグネチャを元に検査を行うlevel-2型検査、 により、Rubyの型検査に対するさまざまなレベルのニーズに応えることを企図しています。 この発表では特に、level-1型検査器として発表者が開発している『型プロファイラ』について詳しく説明します。 型プロファイラは、注釈のないRubyコードを対象とする軽量な静的解析ツールです。 静的解析によるプログラミング支援として型エラーの可能性を検出したり、 型注釈を必要とする別の検証ツールを使うために型注釈の推定を行ったりすることができます。 型プロファイラの基本的なアイデア、設計において気にしていること、現在の進捗などを説明する予定です。