Kōhei Yamamoto

Yokohama.rb Monthly Meetup #69 に参加した

6/11(日)の Yokohama.rb Monthly Meetup #69 に参加しました。3 回目ぐらいです。

今回は初参加の方が 4 人ほどいて、そのなかにはプログラミング始めたての学生の方もいました。行動力!

内容は次のような感じでした。

レシピブック読書会

今回はレシピ 230 から 233 まで読みました。以下メモ。

レシピ 231

OptionParser#on で設定できるオプション値の挙動が若干ややこしめでした。 Ruby 2.3.1 で確かめてみたところ、次のような感じでした。

省略不可のオプション

省略可のオプション

foo.rb:*:in `<main>': =[NAME]: incompatible argument styles (ArgumentError)
OptionParser::Switch::PlacedArgument, OptionParser::Switch::OptionalArgument

レシピ 233

コードのテストを if __FILE__ == $0 内に書くという利用法があります。次のような感じ。

# foo.rb
class Foo
  def foo(a, b)
    a + b
  end

  if __FILE__ == $0
    require 'minitest/autorun'
    class TestFoo < Minitest::Unit::TestCase
      def test_foo
        assert_equal 6, Foo.new.foo(2, 3)    # テスト結果は NG となる
      end
    end
  end
end

これで、別ファイルから require_relative 'foo' などとすれば Foo が使えますし、foo.rb 自体を実行すれば if 内の foo のテストを実行できます。

発表

今回は競馬のデータ解析の話と、個人で作っておられる Rails アプリのコードを読むという企画でした。

競馬のデータは JRA-VAN というところで取得できるそうです(.NET 環境からしかデータが取得できないそうですが)。競馬データ解析でうまくビジネスするためには、実力があるのに人気がない馬を見つけることが求められるそうです。

Rails アプリのコードを読む企画では、AngularJS + Rails (API 用) という構成のアプリについてコードを読んでいきつつ、有識者の方々からコメントが出ていました。以下メモ。

私も Rails をちょこちょこ触っているので、かなり勉強になりました。


その後は懇親会で吉田飯店へ。今回は参加者が 10 人以上と多く、懇親会もかなり盛り上がっていました。

他の方から、「gem のコードは Web 上に結構あるが、Rails を使ったコードはあまりないので参考にするのが難しい」というお話を伺いました。そういうこともあって、今回のようなコードを読む企画はよいのだろうなあと思いました。

次回の Yokohama.rb は以下リンクから申し込めます。