@znz blog

ZnZ の memo のようなもの

RubyKaigi 2015 の 2 日目に参加しました

| Comments

RubyKaigi 2015 の 2 日目に参加したので、そのメモです。

スポンサーセッション (Cookpad)

Keynote

The history of testing framework in Ruby

  • テスティングフレームワークの歴史
  • /\Atest.+unit\z/i が標準添付されたのは Ruby 1.8 から
  • /\Atest.+unit\z/i とは Test::Unit 互換 API が重要
  • テストのグループ化
  • テストの共有
  • failure 時の表示の違い
  • assert の書き方の違い
  • 質疑応答
  • yield 付きの setup について
  • http://slide.rabbit-shocker.org/authors/kou/rubykaigi-2015/

Running Ruby on Solaris

Lunch on your own

また築地の方に行って、今度は間に合うように戻ってこれました。

Data Analytics Service Company and Its Ruby Usage

Ruby for one day game programming camp for beginners

  • 自己紹介
  • KMC の紹介
  • programming camp の紹介
  • 未経験から 8,9 割が動くものを作れる
  • 続けてゲームを作ろうとする人はだいたい Unity か C#
  • 重力は難しい
  • シューティングゲームが簡単

Ruby meets Go

Rhebok, High Performance Rack Handler

  • Mercari
  • unicorn より速い Rhebok
  • Perl の Gazelle の Ruby 版
  • Gazelle や Rhebok はツノが 2 本の動物
  • unicorn が 1 本だから
  • WebSocket や Streaming には向かない
  • reverse proxy なしで直接公開にも向かない
  • 専用コマンドはないので rackup -s Rhebok ... で起動
  • Hot Deploy
  • start_server コマンドを wrapper として使う
  • Benchmark
  • ISUCON 4 の問題でもベンチマークしても unicorn より速い
  • rack の説明
  • Rack Handler の簡易実装
  • その問題点と解決方法
  • https://github.com/kazeburo/prefork_engine
  • IO timeout
  • unicorn はタイムアウトで SIGKILL している (乱暴)
  • Parse HTTP request
  • PicoHTTPParser を使った
  • TCP optimization
  • TCP_NODELAY disable it
  • Nagle’s algorithm
  • writev(2)
  • http://www.slideshare.net/kazeburo/rhebok-high-performance-rack-handker-rubykaigi-2015

Pragmatic Testing of Ruby Core

  • 自己紹介
  • GMO Pepabo の紹介
  • https://github.com/yaocloud
  • ruby 2.3.0-preview がビルドできない問題の原因が判明したという業務連絡
  • オープンソースへの貢献の話
  • Documentation is hard
  • Testing and Running are easy
  • テスト実行の tips
  • .travis.yml を見る
  • ruby の場合は .travis.yml が複雑なので簡易な手順を紹介
  • test 関係のターゲットが common.mk にいろいろ
  • sample/test.rb
  • make btest-ruby
  • bootstraptest/ を実行
  • make test-all
  • test/ を実行
  • make test-all TESTS=logger
  • make test-all TESTS=-j4
  • test/-ext-/ext/-test-/ を使って C API をテストしている
  • make check はだいたい全部を実行するもの
  • test-testframework は fork した minitest + test/unit をテストしている
  • rubygems と rdoc は upstream がある
  • rubygems と rdoc はまだ Ruby 1.8 をサポートしている
  • test/lib/envutil.rb
  • rubyspec
  • http://rubini.us/2014/12/31/matz-s-ruby-developers-don-t-use-rubyspec/
  • rubyspec は仕様ではない
  • make update-rubyspec
  • make test-rubyspec
  • https://github.com/ruby/rubyspec で生きている
  • rubyci and chkbuild
  • http://rubyci.org/
  • https://github.com/akr/chkbuild
  • make run
  • make bisect
  • coverage

スポンサーセッション (pixiv)

Lightning Talks

  • Dora Brain

Update Early, Update Often

  • deppbot
  • bundle lock --update

Automating View Internationalization in Ruby on Rails

  • h が自動化されたように tl も自動化した話
  • .new のような例がうまくいかない
  • gem はまだ公開されていない

A new testing framework Rgot

Building an Unbreakable MRI-based Embedded Computer Appliance

  • 3Bees
  • Make filesystem read-only
  • JeOS

Do you trust that certificate?

  • Web アプリが外部サイトにアクセスする時の話
  • ルート CA の更新の話

How I debugged debugger

Padrino Travel Guide

  • Padrino の 2 つの見方
  • full-stack Web Application Framework
  • Sinatra Plugin
  • 使用例
  • dwango.jp
  • animelo mix
  • ssnote.net

What I learned by implementing a Ruby VM in Erlang

Rubygemsで作るお手軽データ分析基盤 〜あるいは 私はどうやって他人の褌で相撲を取ったか〜

Rationalを最適化してみた

The Mythical Creatures of Summer of Code

  • Rails Girls Summer of Code など

Comments