2010-09-01から1ヶ月間の記事一覧

ブロック引数つきのObject#presenceというのを考えた

以下のような処理をしたい。name という名前のユーザを探し、その年齢を出力する。 def age(name) Persion.where(:name => name).age end 上のコードはまずいところが一箇所ある。 name というユーザがいなかった場合に、例外になるという点だ。 def age(nam…

RailsじゃなくてもActiveSupportの自動require機能を使う

Railsでは、 config/application.rb で config.autoload_paths << Rails.root.join("lib") と書いておくと、例えば $ cat lib/my_library.rb class MyLibrary : endみたいなファイルが置いてあれば、Railsアプリ内で MyLibrary クラスを特にrequireしなくて…

ruby-profとKCacheGrindでプロファイル野郎になる

速さが足りない!!!!! そんな時はプロファイリングの時間ですね。 Rubyには標準添付ライブラリとして profile というプロファイラがついてくる。でもこのライブラリはあまりに遅すぎて実用に耐えないから、多分誰も使っていない。ほとんどのRubyistは ru…

capistranoでbundle installする

Capfileで run "cd #{release_dir}; bundle install vendor/bundle --without test development --deployment" とか書いてたけど、bundlerの公式サイト見てたら、capistrano用のbundle installタスクが用意されてることに気づいた。 使い方 Capfileの中で re…

doppelkunを復活させた

doppelkun( http://twitter.com/doppelkun )というtwitter-botを運営しているのですが、このたびBASIC認証の廃止を受けて死んでいたので、OAuth対応させることで復活させました。 当時やっつけで書いたコードだったので、直すのに苦労しました。かと言って…