Ruby Kaigi 2019 の スライドをまとめてみた


# はじめに

福岡で開催されたRuby Kaigi 2019に参加してきました。
3日間でとても多くのセッションが用意されていていましたが、残念ながら聞けないものも多くありました。
動画が公開されるのが楽しみなのですがそれまではスライドを参照しておこうかと思い、参加できなかったセッションも含めて公開されているスライドをまとめて置きたいと思います。


## 1日目

speakers | twitter | title    | slide | movie |
|:---------|:--------|:---------|:-----|:-----|
Matz |[@yukihiro_matz](https://twitter.com/yukihiro_matz)|The Year of Concurrency|-|[○](https://www.youtube.com/watch?v=kc3okicxmqA)|
Matz & the Ruby Core Team|-|Ruby 3 Progress Report|[○](https://docs.google.com/presentation/d/1z_5JT0-MJySGn6UGrtdafK1oj9kGSO5sGlTtEQJz0JU/mobilepresent?slide=id.p)|[○](https://www.youtube.com/watch?v=O12i64Ey_pE)
|||
Takashi Kokubun|[@k0kubun](https://twitter.com/k0kubun)|Performance Improvement of Ruby 2.7 JIT in Real World|[○](https://speakerdeck.com/k0kubun/rubykaigi-2019)|[○](https://www.youtube.com/watch?v=bz-sy5b2EXY)
Maciej Mensfeld|[@maciejmensfeld](https://twitter.com/maciejmensfeld)|How to take over a Ruby gem|[○](https://mensfeld.github.io/taking-over-a-gem/#/)|[○](https://www.youtube.com/watch?v=wePVhZeZTNM)
ITOYANAGI Sakura|[@aycabta](https://twitter.com/aycabta)|Terminal Editors For Ruby Core Toolchain|[○](https://slide.rabbit-shocker.org/authors/aycabta/rubykaigi-2019/)|[○](https://www.youtube.com/watch?v=8l1ep4nN_KQ)
ota42y|[@ota42y](https://twitter.com/ota42y)|How to use OpenAPI3 for API developer|[○](https://speakerdeck.com/ota42y/how-to-use-openapi3-for-api-developer-rubykaigi-2019)|[○](https://www.youtube.com/watch?v=om1dgTbmXrw)
|||
Koichi Sasada|[@_ko1](https://twitter.com/_ko1)|Write a Ruby interpreter in Ruby for Ruby 3|[○](http://www.atdot.net/~ko1/activities/2019_rubykaigi2019.pdf)|[○](https://www.youtube.com/watch?v=PZDhXPgt98U)
Nate Berkopec|[@nateberkopec](https://twitter.com/nateberkopec)|Determining Ruby Process Counts: Theory and Practice|[○](https://github.com/speedshop/rubykaigi2019/blob/master/presentation.pdf)|[○](https://www.youtube.com/watch?v=BE5C2ydN0y0)
Giovanni Sakti|[@giosakti](https://twitter.com/giosakti)|Pathfinder - Building a Container Platform in Ruby Ecosystem|[○](https://speakerdeck.com/giosakti/pathfinder-building-a-container-platform-in-ruby-ecosystem)|[○](https://www.youtube.com/watch?v=AhBds1xGT94)|[]()
joker1007|[@joker1007](https://twitter.com/joker1007)|Pragmatic Monadic Programing in Ruby|[○](https://speakerdeck.com/joker1007/pragmatic-monadic-programming-in-ruby)|[○](https://www.youtube.com/watch?v=xUV2DvZ5L1A)
|||
Yusuke Endoh|[@mametter](https://twitter.com/mametter)|A Type-level Ruby Interpreter for Testing and Understanding|[○](https://www.slideshare.net/mametter/a-typelevel-ruby-interpreter-for-testing-and-understanding)|[○](https://www.youtube.com/watch?v=2oDBKrPYEu8)
Alexander Ivanov Zahary Karadjov |@&#xFFF0;alehander42 @&#xFFF0;zah|Compiling Ruby to idiomatic code in static languages|[]()|[○](https://www.youtube.com/watch?v=hlWCp210IIY)
Genadi Samokovarov|[@gsamokovarov](https://twitter.com/gsamokovarov)|Writing Debuggers in Plain Ruby! Fact or fiction?|[○](http://kaigi-debuggers-in-ruby.herokuapp.com/#/)|[○](https://www.youtube.com/watch?v=9-fsHDQkBTA)
Yoh Osaki|[@youchan](https://twitter.com/youchan)|Ruby for NLP|[○](http://youchan.org/RubyKaigi2019/)|[○](https://www.youtube.com/watch?v=9-fsHDQkBTA)|[]()
|||
Samuel Williams|[@ioquatix](https://twitter.com/ioquatix)|Fibers Are the Right Solution|[○](https://www.codeotaku.com/journal/2018-11/fibers-are-the-right-solution/index)|[○](https://www.youtube.com/watch?v=qKQcUDEo-ZI)
Matthew Draper|[@_matthewd](https://twitter.com/_matthewd)|A Bundle of Joy: Rewriting for Performance|[○](https://speakerdeck.com/matthewd/rubykaigi-2019-gel-section)|[○](https://www.youtube.com/watch?v=fQBrWrJKPVU)
Paolo Perrotta|[@nusco](https://twitter.com/nusco)|A Deep Learning Adventure|[]()|[○](https://www.youtube.com/watch?v=Uj-7X-9lkIg)
Shizuo Fujita|[@watson1978](https://twitter.com/watson1978)|RMagick, migrate to ImageMagick 7|[○](https://speakerdeck.com/watson/rmagick-migrate-to-imagemagick-7-number-rubykaigi-number-rubykaigi2019)|[○](https://www.youtube.com/watch?v=Wt9eR8sj9s8)
|||
Kazuki Tsujimoto|[@k_tsj](https://twitter.com/k_tsj)|Pattern matching - New feature in Ruby 2.7|[○](https://speakerdeck.com/k_tsj/pattern-matching-new-feature-in-ruby-2-dot-7)|[○](https://www.youtube.com/watch?v=paBlgsqoKk8)
Alex Wood|[@alexwwood](https://twitter.com/alexwwood)|Building Serverless Applications in Ruby with AWS Lambda|[○](https://www.slideshare.net/tongueroo/jets-the-ruby-serverless-framework-ruby-kaigi-japan-2019-april)|[○](https://www.youtube.com/watch?v=OA7jwECjvRY)
Shawnee Gao|[@gao_shawnee](https://twitter.com/gao_shawnee)|GraphQL Migration: A Proper Use Case for Metaprogramming?|[○](https://speakerdeck.com/shawneegao/ruby-kaigi-slides)|[○](https://www.youtube.com/watch?v=GKj4dipBEts)
Aaron Patterson|[@tenderlove](https://twitter.com/tenderlove)|Compacting GC for MRI v2|[○](https://speakerdeck.com/tenderlove/compacting-gc-in-mri-v2)|[○](https://www.youtube.com/watch?v=HgAZsg7D_Jo)

## 2日目

speakers|twitter|title|slide|movie|
|:---------|:--------|:---------|:-----|:-----|
nagachika|[@nagachika](https://twitter.com/nagachika)|All bugfixes are incompatibilities|[○](https://www.slideshare.net/nagachika/all-bugfixes-are-incompatibilities)|[○](https://www.youtube.com/watch?v=g_wPQzNlu9Q)|
|||
Sam Phippen|[@samphippen](https://twitter.com/samphippen)|How RSpec works|[○](https://speakerdeck.com/samphippen/how-rspec-works)|[○](https://www.youtube.com/watch?v=B8yKlTNlY5E)
Noah Gibbs|[@codefolio](https://twitter.com/codefolio)|Six Years of Ruby Performance: A History|[○](https://www.dropbox.com/s/jfe4yjezpcr2171/RubyKaigiSlides.key?dl=0)|[○](https://www.youtube.com/watch?v=iy4N7AtzZYc)
Hitoshi HASUMI|[@hasumikin](https://twitter.com/hasumikin)|Practical mruby/c firmware development with CRuby|[○](https://slide.rabbit-shocker.org/authors/hasumikin/RubyKaigi-2019/)|[○](https://www.youtube.com/watch?v=rl0Nfiqs4e0)
Kouhei Sutou Kazuma Furuhashi|[@ktou](https://twitter.com/ktou) [@284km](https://twitter.com/284km)|Better CSV processing with Ruby 2.6|[○](https://slide.rabbit-shocker.org/authors/kou/rubykaigi-2019/)|[○](https://www.youtube.com/watch?v=z8yV3yEqxJY)
|||
Hiromasa Ishii|[@Hir0_IC](https://twitter.com/Hir0_IC)|intimate Chat with Matz and mruby developers about mruby|[○](https://www.slideshare.net/Hir0IC/chat-with-matz-about-mruby-in-rubykaigi2019)|[○](https://www.youtube.com/watch?v=Mf4v3u6tgOk)
Xavier Noria|[@fxn](https://twitter.com/fxn)|Zeitwerk: A new code loader|[○](https://speakerdeck.com/fxn/zeitwerk-a-new-code-loader)|[○](https://www.youtube.com/watch?v=YSc_GNQP6ts)
Andrey Novikov|[@Envek](https://twitter.com/Envek)|Yabeda: Monitoring monogatari|[○](https://docs.google.com/presentation/d/1i8N_OcnQJ9SE6wdqzqV-vp_IYRxQRpEtJ0tpluYtCvo/edit#slide=id.p)|[○](https://www.youtube.com/watch?v=CvjefIat8yE)
Yutaka HARA|[@yhara](https://twitter.com/yhara)|Ovto: Frontend web framework for Rubyists|[○](https://speakerdeck.com/yhara/ovto-frontend-web-framework-for-rubyists)|[○](https://www.youtube.com/watch?v=d_y2uOBM_Tg)
|||
Jake Zimmerman Paul Tarjan|@&#xFFF0;jez [@ptarjan](https://twitter.com/ptarjan)|State of Sorbet: A Type Checker for Ruby|[○](https://sorbet.run/talks/RubyKaigi2019/#/)|[○](https://www.youtube.com/watch?v=odmlf_ezsBo)
Michael Grosser|[@grosser](https://twitter.com/grosser)|Actionable Code Coverage|[○](https://grosser.github.io/ruby-coverage-talk/#1)|[○](https://www.youtube.com/watch?v=01LYb28rMUQ)
|||RubyData Workshop|[○](https://docs.google.com/presentation/d/1wYBqdlv-rBqCcjqaT4pbqYnpA9cDlTr2iKpGAQ-Mz-I/edit#slide=id.p)|[○](https://www.youtube.com/watch?v=PFcpmbRgB5A)
Shugo Maeda|[@shugomaeda](https://twitter.com/shugomaeda)|Terminal curses|[○](https://github.com/shugo/RubyKaigi2019/blob/master/README.md)|[○](https://www.youtube.com/watch?v=67M6Deo2aTw)
|||
Vladimir Makarov|@&#xFFF0;vnmakarov|A light weight JIT compiler project for CRuby|[○](https://www.slideshare.net/VladimirMakarov13/the-lightweightjitcompilerprojectforc-ruby-141836482)|[○](https://www.youtube.com/watch?v=FdWLXKvZ6Gc)
Amir Rajan|[@amirrajan](https://twitter.com/amirrajan)|Building a game for the Nintendo Switch using Ruby|[]()
Alex Rodionov|[@p0deje](https://twitter.com/p0deje)|Crystalball: predicting test failures|[○](https://speakerdeck.com/p0deje/crystalball-predicting-test-failures)|[○](https://www.youtube.com/watch?v=q2q-9Td71kE)
Uchio KONDO|[@udzura](https://twitter.com/udzura)|The fastest way to bootstrap Ruby on Rails|[○](https://speakerdeck.com/udzura/the-fastest-way-to-bootstrap-ruby-on-rails)|[○](https://www.youtube.com/watch?v=pmlUq5fNkzA)
|||
Emily Stolfo|@&#xFFF0;estolfo|Benchmarking your code, inside and out|[○](https://drive.google.com/file/d/1n2wPr_hqqEGZVts1s2yQ5pGbUoC-ohdX/view)|[○](https://www.youtube.com/watch?v=WOnxe6qWtzY)
Kevin Menard|[@nirvdrum](https://twitter.com/nirvdrum)|Beyond `puts`: TruffleRuby’s Modern Debugger Using Chrome|[○](https://speakerdeck.com/nirvdrum/beyond-puts-trufflerubys-modern-debugger-using-chrome)|[○](https://www.youtube.com/watch?v=pe28r1VSBdU)
Mike McQuaid|[@MikeMcQuaid](https://twitter.com/MikeMcQuaid)|Building Homebrew in Ruby: The Good, Bad and Ugly|[]()|[○](https://www.youtube.com/watch?v=m1P_06bjjCs)
Tanaka Akira|[@tanaka_akr](https://twitter.com/tanaka_akr)|What is Domain Specific Language?|[○](http://www.a-k-r.org/pub/2019-04-19-akr-DSL-rubykaigi2019.pdf)|[○](https://www.youtube.com/watch?v=9S6RK0AGzng)
|||
-||Lightning Talks||[○](https://www.youtube.com/watch?v=B2NTL_J62JE)|
|||How does TruffleRuby work|[○](https://speakerdeck.com/kishida/how-does-truffleruby-work)


## 3日目

speakers|twitter|title|slide|movie|
|:---------|:--------|:---------|:-----|:-----|
Presentation avatar||Ruby Committers vs the World|[]()|[○](https://www.youtube.com/watch?v=5eAXAUTtNYU)
|||
Yurie Yamane(team yamanekko) Masayoshi Takahashi|[@yuri_at_earth](https://twitter.com/yuri_at_earth) [@takahashim](https://twitter.com/takahashim)|(partially) Non-volatile mruby|[○](https://speakerdeck.com/yamanekko/partially-non-volatile-mruby)|[○](https://www.youtube.com/watch?v=N-TGgiNp5u0)
Ariel Zelivansky|@&#xFFF0;zelivans|Fuzzing native Ruby code with Kisaten|[○](https://www.twistlock.com/wp-content/uploads/2019/04/RubyKaigi2019.pdf)|[○](https://www.youtube.com/watch?v=1vJzUJsT4tA)
Justin Searls|[@searls](https://twitter.com/searls)|The Selfish Programmer|[○](https://vimeo.com/331528433/88176d4f3c)|[○](https://www.youtube.com/watch?v=LVe0g91yZ84)
Sangyong Sim|[@riseshia](https://twitter.com/riseshia)|Cleaning up a huge ruby application|[○](https://speakerdeck.com/riseshia/cleaning-up-a-huge-ruby-application)
|||
Soutaro Matsumoto|[@soutaro](https://twitter.com/soutaro)|The challenges behind Ruby type checking|[○](https://speakerdeck.com/soutaro/the-challenges-behind-ruby-type-checking)|[○](https://www.youtube.com/watch?v=7N-QOx6cVI4)
Charles NutterThomas E Enebo|[@tom_enebo](https://twitter.com/tom_enebo)|JRuby: The Road to Ruby 2.6 and Rails 6|[○](https://speakerdeck.com/headius/jruby-the-road-to-ruby-2-dot-6-and-rails-6)|[○](https://www.youtube.com/watch?v=vPy5KO4uHuA)
Colin Fulton|[@PeterQuines](https://twitter.com/PeterQuines)|Running Ruby On The Apple II|[○](https://github.com/justcolin/conference_talks/blob/master/ruby_on_the_apple_ii__rubykaigi_2019/README.md)|[○](https://www.youtube.com/watch?v=qiwpWHfyXpM)
Go Sueyoshi|[@sue445](https://twitter.com/sue445)|Best practices in web API client development|[○](https://speakerdeck.com/sue445/best-practices-in-web-api-client-development-number-rubykaigi)
|||
Hiroshi SHIBATA|[@hsbt](https://twitter.com/hsbt)|The future of the Bundled Bundler with RubyGems|[○](https://www.slideshare.net/hsbt/the-future-of-bundled-bundler)|[○](https://www.youtube.com/watch?v=H4rsTfJw9A4)
Kevin Deisz|[@kddeisz](https://twitter.com/kddeisz)|Pre-evaluation in Ruby|[○](https://speakerdeck.com/kddeisz/pre-evaluation-in-ruby)|[○](https://www.youtube.com/watch?v=q3i5pYpxP-s)
Masatoshi SEKI|[@m_seki](https://twitter.com/m_seki)|dRuby 20th anniversary hands-on workshop|[]()|[○](https://www.youtube.com/watch?v=6BJLGr_M30g)
Sadayuki Furuhashi|[@frsyuki](https://twitter.com/frsyuki)|Performance Optimization Techniques of MessagePack-Ruby|[○](https://www.slideshare.net/frsyuki/performance-optimization-techniques-of-messagepackruby-rubykaigi-2019)
|||
Kenta Murata|[@mrkn](https://twitter.com/mrkn)|Reducing ActiveRecord memory consumption using Apache Arrow|[○](https://speakerdeck.com/mrkn/reducing-activerecord-memory-consumption-using-apache-arrow)|[○](https://www.youtube.com/watch?v=c1Y5o4tgblQ)
Tung Nguyen|@&#xFFF0;tongueroo|Ruby Serverless Framework|[○](https://www.slideshare.net/tongueroo/jets-the-ruby-serverless-framework-ruby-kaigi-japan-2019-april/tongueroo/jets-the-ruby-serverless-framework-ruby-kaigi-japan-2019-april)|[○](https://www.youtube.com/watch?v=a0VKbrgzKso)
Tatsuhiro Ujihisa|[@ujm](https://twitter.com/ujm)|Play with local vars|[○](https://gist.github.com/ujihisa/bf0c24f8200533d89300a67be217ee39)|[○](https://www.youtube.com/watch?v=oNJyBZ5OAMw)
nobu|[@n0kada](https://twitter.com/n0kada)|Timezone API|[]()
|||
Urabe, Shyouhei|[@shyouhei](https://twitter.com/shyouhei)|The send-pop optimisation|[○](https://speakerdeck.com/shyouhei/the-send-pop-optimisation)|[○](https://www.youtube.com/watch?v=rH81nlm1lcE)
Petr Chalupa|[@pitr_ch](https://twitter.com/pitr_ch)|TruffleRuby: Wrapping up compatibility for C extensions|[○](https://speakerdeck.com/pitr_ch/truffleruby-wrapping-up-compatibility-for-c-extensions)|[○](https://www.youtube.com/watch?v=R-vInXwpPPg)
Colby Swandale|[@oceanicpanda](https://twitter.com/oceanicpanda)|Working towards Bundler 3|[○](https://speakerdeck.com/colby/working-towards-bundler-3)|[○](https://www.youtube.com/watch?v=m_KTuPuEmQ0)
Naotoshi Seo Yusaku Hatanaka|[@sonots](https://twitter.com/sonots) [@hatappi](https://twitter.com/hatappi)|Red Chainer and Cumo: Practical Deep Learning in Ruby|[○](https://speakerdeck.com/sonots/red-chainer-and-cumo-practical-deep-learning-in-ruby-at-rubykaigi-2019)
|||
Jeremy Evans|[@jeremyevans0](https://twitter.com/jeremyevans0)|Optimization Techniques Used by the Benchmark Winners|[○](http://code.jeremyevans.net/presentations/rubykaigi2019/index.html#1)|[○](https://www.youtube.com/watch?v=RuGZCcEL2F8)|

リンク間違いや、追加されている資料を教えていただけると助かります。
なおこちらの情報は[ブログ](http://hotoolong.hatenablog.com/entry/2019/04/30/185146)