オンラインパーフェクトRuby読書会 - パーフェクトRuby Advent Calendar 3日目
このエントリは パーフェクトRuby Advent Calendar の3日目のエントリです。
2日目のエントリは 最近のyard パーフェクトRuby Advent Calendar 2日目 - 放牧日記 です
オンラインパーフェクトRuby読書会の話をします。 パーフェクトRubyはとてもすばらしい本ですが、厚みと重みもすばらしいので、 そのあたりの工夫など、どなたかの参考になればうれしいです:)
えーと、最近、パーフェクトRuby読書会をお友達と2人でやっています。 それまで、お友達がRubyの勉強を始めて、ときどき質問に答えていたりしました。 なんとなく答えることはできますが、ちゃんと答えられているか心配です。 意外と感覚で理解したつもりになっていたことが多いので、ググったり本を見たりと確認しますが、解説が難しかったり、簡潔すぎたりといったことが多かったのでした。
Rubyを勉強中の人にちょうどいい本を探していたのです。 あるとき、近くにあったパーフェクトRubyを見ながら解説してみたら、とてもやりやすいということに気がつきました。答えにちょっとでもつまったら、念のためパーフェクトRubyを確認してみる。これはいい感じです。
いい感じなので、読書会やってみようとなったのですが、重い本を持ってどこかに集まるのはちょっと大変ですね。そこでオンライン読書会です。 SkypeでもFacetimeでもLineでも音声がつながればなんでもよいと思います。
時間を決めて始める。交互に音読をしていく。 わからないところや、気になったところを聞いてみる。 コードを書いて動かしてみる。ちょっと値を変えてみる。 そういうことをしています。
というわけで、パーフェクトRubyは、 Rubyをある程度やったことがある人にも、Rubyを使い始めた人にもオススメです。 パーフェクトRuby読みたいけど、重いからなあと思っている方には、オンライン読書会もオススメです〜
明日のパーフェクトRuby Advent Calendar 4日目の ADVENTAR は USAMI Kenta さんです。
#shinjukurb 初心者向け RSpec 資料
前置き
最近の shinjuku.rb
shinjuku.rb はここしばらく、Rails3レシピブック読書会ではなく、ペアプロしながらツッコミを入れてくというエクストリーム・フィッシュボール形式でお題を実装しています。 ペアは @garden_tree さんが作ってくれた Rails 製のアプリでランダムに決めます。で、即席ペアを組みまして、15分間ペアプロします。まわりの人はヤジとかツッコミとかをいれます。
道具
- ruby 2.0.0p195 (1.8.x でも 1.9.x でも動くとは思いますが…2.0使います)
- rspec
- git
- github (https://github.com/Shinjuku-rb/shinjuku.rb-13)
雰囲気とか?
参加者は、最近Ruby始めましたというビギナーや学生から、Rubyでお仕事してますという人まで様々ですね。僕はヤジを飛ばしつつ、いろんな人の質問に答えたりしてます。多い質問は RSpec についてな気がします。
RSpec 資料
というわけで本題に。
リファレンス
- "Publisher: RSpec - Relish" https://www.relishapp.com/rspec
- ここの検索バーに、調べたいものを入力して検索するとだいたい出てくる感じだと思います。そういば使い方よくわかってないですね^^;…Sign up とか Sign in ってするとどうなるのか知らない…
書き方
- "RSpecによるユニットテストの書き方 - tech.recompile.net" http://tech.recompile.net/post/21340599029/rspec
- @takai さんによる書き方について。初心者の人はぜひ御一読を。
モダンな書き方とかベストプラクティスとか
- ナウい書き方とか、お手本はこのあたり。
- "RSpec" http://kerryb.github.io/iprug-rspec-presentation/#1
- "Better Specs { rspec guidelines with ruby }" http://betterspecs.org/
- "RSpec 2 Best practices" http://www.slideshare.net/andrea.reginato/rspec-2-best-practices
他にもいろいろ調べたい
- "RSpec を使い始める人が読むべき N 個のドキュメント | Aiming 開発者ブログ" http://developer.aiming-inc.com/rails/rspec-references/
- 僕が知る限り一番まとまった資料です。↑ に載っている @t_wada さんのエントリとかオススメです。
オマケ
Github は help ページ見るのがいいですかねえ(?_?) * "GitHub Help" https://help.github.com/
最後に
というわけでざっくりした RSpec の資料紹介でした。勉強の手助けになれば幸いです。わからないところなど shinjuku.rb とかで周りの人に聞いてみてください〜。
うづらRuby会議
先日、うづらさんの個人Ruby会議、うづらRuby会議に参加してきました。
うづらさんの自分語りやPadrino話、いろんな話がふぁ〜っと良い感じにミックスされたうづらワ〜ルドを堪能させていただきました。うづらさんは、実にたのしそうにハニカミながらたのしんでいてとてもいいですね。なんていうか、うづらRuby会議やっちゃえ〜(ドキドキ)みたいなところとかとても好きです。
あ、いつぞやの tokyu.rb で聞かせてもらった焼肉屋さんの話とか、いま、なんとなく思い出してきました。
会議の後は、たかいさん、レオさん、かっぱさん、onkさん、futoaseさん、すぎやんと、永利という中華屋さんで、かつてのフレームワーク戦国時代からRailsがでてきて、これだ!って思ってRails使ってる人達からすると、Railsでいいじゃんって思ってたけど、始めから Rails 覚えるのって今だとだいぶ大変かもねえ、とか、Rails にはだいたいなんでもあるけどありすぎて意外と把握できてないよね、とか、レビューに出すと自分で書いちゃったところが Rails に用意されてて…みたいなの多いなあ、とか、やっぱり Rails Guide 読むのいいよね、とか、Rails Guide 出力するコマンドあるよ(http://qiita.com/items/7bb41be234020caeab96)とか、そもそも mobi ファイルへのリンク( http://guides.rubyonrails.org/kindle/ruby_on_rails_guides_v3.2.13.mobi )あるよね。とかとか話してた気がします。牛の水煮だったかな(?_?)、めちゃくちゃ美味かったです。あといっしょうさんが来なかったのとすぎやんがおとなしかった気がする。
@ainame さんも言ってたけど、うづらさんはほんとにいつ原稿書いてるんですかねえ。すごいなあ。
あと群馬からラーメン食べにきたことになっちゃったてらくまさんに会えなくて残念だったのと、ふじむらさんと久しぶりにお話できてよかった。
shinjuku.rb 14 に参加
"Shinjuku.rb #14 on Zusaar" http://www.zusaar.com/event/539003
に参加しました。
前回の #13 から引き続き、↓のお題、をやりました。
"TDD Boot Camp(TDDBC) - TDDBC大阪3.0/課題" http://devtesting.jp/tddbc/?cmd=view&p=TDDBC%E5%A4%A7%E9%98%AA3.0%2F%E8%AA%B2%E9%A1%8C
ソースはこちら
https://github.com/Shinjuku-rb/shinjuku.rb-13/pull/1
ちょっと準備が悪くて、前回のモデル設計っぽいなにかの写真とかもみつからなくて...記憶もほぼなく...本当にすみませんでしたm(_ _)m
前回出席で今回欠席の @masata_masata さんが送ってくれました。あzs!
つ bit.ly/15PFQLU RT @tatsuosakurai: #shinjukurb うーん、前回のモデル設計した写真が見つからない〜;x;
— ニシダマサタさん (@masata_masata) 2013年2月27日
その間に今回もモデル設計っぽいものを書いたので忘れずに貼っておこう
#shinjukurb 今日のホワイトボード twitpic.com/c7aten
— 櫻井達生さん (@tatsuoSakurai) 2013年2月27日
初心者の方向けに
"RSpecによるユニットテストの書き方 - tech.recompile.net" http://tech.recompile.net/post/21340599029/rspec
"コミットメッセージの書き方 - ククログ(2012-02-21)" http://www.clear-code.com/blog/2012/2/21.html
前回の記憶がだいぶ飛んでて困ったんですが、今回は @gunjisatoshi さんが実況してくれていました。"Shinjuku.rb #14 - Togetter" http://togetter.com/li/463384 (∩´∀`)∩ワーイ
なんすかね、なんか
今日の #shinjukurb は rspec boys って感じだったw
— 櫻井達生さん (@tatsuoSakurai) 2013年2月27日
こんな雰囲気でしたwもしくは PearProBoys とか?
懇親会ではプルリの作法?とか、RailsCast とか CodeSchool とか Codecademy とか ドットインストールとかについて話してた気がする。
次回へのメモ:
ステップ0 お金の投入と払い戻し がだいたいできてきたけど、払い戻しってお金表示するだけでいいんだっけ(?_?)
rvm で ruby 2.0.0 メモ
rvm get head rvm install ruby-2.0.0 rvm use 2.0.0 rvm gemset create hoge rvm use @hoge gem i bundler wget http://curl.haxx.se/ca/cacert.pem -O /usr/local/etc/openssl/certs/cert.pem export SSL_CERT_FILE=/usr/local/etc/openssl/certs/cert.pem bundle
hoge は Rails 3.2.9 だった。起動させてみると
$ rails s dyld: lazy symbol binding failed: Symbol not found: _rb_intern2 Referenced from: /Users/tatsuosakurai/.rvm/gems/ruby-2.0.0-p0@bop/gems/eventmachine-1.0.0/lib/rubyeventmachine.bundle Expected in: flat namespace dyld: Symbol not found: _rb_intern2 Referenced from: /Users/tatsuosakurai/.rvm/gems/ruby-2.0.0-p0@bop/gems/eventmachine-1.0.0/lib/rubyeventmachine.bundle Expected in: flat namespace [1] 88611 trace trap rails s
eventmachine でエラーになったので、ググった。
gem i eventmachine rails s
Rails も起動できた〜!速い!!
この後、Rails を 3.2.12 にしました。
参考にさせていただきました〜m(_ _)m
"ruby-2.0.0-p0_install.sh" https://gist.github.com/sonots/5023386
追記メモ
"homebrew で入れた openssl を使って Ruby をコンパイルすると SSL 利用時に証明書エラーが発生する場合の対応 #openssl #Ruby - Qiita" http://qiita.com/items/12457815d5cee3723b97
いまは gem i bundler --version 1.3.0.pre.8
#shinjukurb 13 に参加
今回で13回。一周年したみたい。
去年は「スタートアップRuby」の執筆活動をしていて、あんまり参加できてなかったのを思い出したりしつつ、一年早いような短いような感じですねえ。
shinjuku.rb は
- 発表したい人の発表
- Extream Fish Bowl (ワイワイしたにぎやかなペアプロ)
- Rails3レシピブック写経会(レア)
だいたいこんな感じ。
今日は
- @bekkou68 さんの 語源の話
- EFB。ネタは↓の自販機作るやつ。ひとまず環境構築とステップ0
- "TDD Boot Camp(TDDBC) - TDDBC大阪3.0/課題" http://devtesting.jp/tddbc/?TDDBC%E5%A4%A7%E9%98%AA3.0%2F%E8%AA%B2%E9%A1%8C
感想など
bundler や rspec 地味なとこ便利になってる印象。
最初の設計みんなでワイワイできて面白かった。
"今日の設計過程 #shinjukurb Photo - ニシダマサタ | Lockerz" http://pics.lockerz.com/s/278862197
rspec の環境構築とか、なんか自分のカタみたいなのになっちゃっていて、なんか頭カタイ感じがあったのでよい刺激になりました。カタにハマっちゃってるとよくない気がする。カタにハメるのはよし。始めて rspec 触る人にもう少し説明しつつやってもよかったかなあ。(?_?)
@tatsuosakurai 時間制限があった方が「小さく作る」方向に行くので、良いかもしれないですね。
— (ю:】 (@garden_tree) January 23, 2013
@tatsuosakurai 良いと思います!(次回までにタイムー+ペアセットアプリ作るか・・・)
— (ю:】 (@garden_tree) January 23, 2013
bundle update できない(?_?)
前提
ruby 1.9.3p362
bundler 1.2.3
rvm 1.17.7
インターネットは繋がってる
bundle install or update を実行すると
… Fetching source index from http://rubygems.org/
で固まったようになってしまった
他のプロジェクトは問題なく動く
rubygems もつながる
gemset を作りなおしてみたけどダメ
Gemfile に
source "http://gems.github.com" source :gemcutter source :rubyforge source :rubygems
と rubygems 以外も設定してみたけど結果変わらず。
結局
Gemfile に書いてある gem を全部コメントアウトして bundle → OK
gem を一つだけコメントアウトを外して bundle → OK
ちょっとずつ外してって、結局全部外して bundle → OK
…えーと、、、、(?_?)
追記:2013/01/10
通る gem と通らない gem があるみたい。依存関係?
rvm install 1.9.3-p327 して ダウングレードしたら上手く動いた!!!
...と思ったけどダメだ...;x;
bundle install できるけど、bundle update できない。
ので、なにかのgemの依存関係が??