メソッドの定義されている場所を探す – komagata
バグ報告からふとActiveRecordで使えるpreviousメソッドってどこからきてるんだろう?と思ってgemsをgrepしてみるも見当たらず。
「Method#source_location」だって!?
ここしばらくgrepしまくってたところでした。1ヶ月前に知ってれば、いまこんなに切羽詰まることもなかった、かもなぁ。
っと、ドキュメント見に行ったら「Proc#source_location」ですね。ともあれ、知らなかったのでありがたい!
とある理由によりrvmでRuby 1.9.1を入れたんですが、なにかするたびこの様なエラーが出てました。
Error loading gem paths on load path in gem_prelude
can't modify frozen string
<internal:gem_prelude>:69:in `force_encoding'
<internal:gem_prelude>:69:in `set_home'
<internal:gem_prelude>:38:in `dir'
<internal:gem_prelude>:76:in `set_paths'
<internal:gem_prelude>:47:in `path'
<internal:gem_prelude>:286:in `push_all_highest_version_gems_on_load_path'
<internal:gem_prelude>:355:in `<compiled>'
なにかなーっとググってみたら・・・
[Ruby 1.9 - Bug #4809][Open] ruby1.9.1で GEM HOME をセットしていると常にエラーが発生する – Ruby Forum
ビンゴ!ひゃっほぅ!
RVM: Ruby Version Manager – rvmrc
As of RVM 1.7.0 project .rvmrc files are opt-in by defualt (therefore off).
To order to enable this feature set the following value in either /etc/rvmrc or ~/.rvmrc:
プロジェクトのルートディレクトリに.rvmrcを置いておくと、そこ以下のディレクトリに降りた時に自動的に環境が切り替えられて便利なのですが、1.7.0 からはデフォルトで無効になったそうです。
で、有効にするには引用の通り /etc/rvmrc または ~/.rvmrc に以下の行を追加します。
rvm_project_rvmrc=1
あーやっぱこれ便利だわー。
[ref.] RVMの環境をプロジェクトごとに切り替える。
日本Ruby会議2011(7月16日〜18日)
日本Ruby会議2011は全ての日程を終了いたしました。ご参加いただいた皆さま、ありがとうございました。

うまくまとめられずに下書きのままだったのですが、ちょうど1ヶ月ということでがんばってまとめたので公開します。
会議そのものについてはレポート班のみなさまのレポートを始め、すでに多数の方が書かれているので自分のことを書こうと思います。
続きを読む…
このSW Notifier自体はだいぶ前に作ったものなのですが、Ruby成分の薄さも闇なら大丈夫なんじゃないかと申し込みました。
2分と持ち時間は短かったのですが、出オチなので十分だろうと思っていたら一番見せたいところがうまくいかなくて、デモは事前にムービーにしておく等の大事さを再確認しました。
ここしばらく知識の自転車操業で「コレ!」という話せる話題を持っていないのですが、アンテナ広げてまたどこかでなにかを話せるようにしていこうと思います。祭りは見ているよりも飛び込んだ方が面白いですしね。
Sinatra: Frequently Asked Questions
How about a Pony (sudo gem install pony):
Sinatraでメールを送る時にオススメされてるPonyさんですが、マルチパートメールを送る時、本文にcharsetが効かないという現象が起きていました。
そこで手元で直してしばらく使ってたのですが、気がつかないうちに送ったpull requestが取り込まれてました。
Commit 0b9b24c9ebd8c80432dc05fb3568f48043ee2990 to benprew/pony – GitHub
Merge pull request #3 from yoshuki/master
いちいち手動で更新してたのでこれはうれしー。
The Thought Collector: Set your root if you use Sinatra on Heroku
YOU MUST set your root in Sinatra.
rootをセットしないでSinatraを使ったアプリをHerokuに上げるとpublicのファイルが404になってしまうので気をつけようという話。
手元のshotgunで上げてた時には問題なかったのでハマってしまいました。
Sinatra: Configuring Settings
By default, this is assumed to be the directory containing the main application file (:app_file setting).
:rootがセットされていない時は:app_fileを使うそうなので、アプリファイルが直下に置いてある場合はこっちをセットでもいいかも。
ちなみに確認したらsettings.app_fileもsettings.rootもnilでした。
ある意味選ばれた者達だけが集うというRejectTokyoRubyKaigi05に行ってきました。
自分は、去年の夏くらいに作れそうと思ってやってみたら作れたのだけれど、表に出すタイミングを逃して眠り続けていたこのSW Notifierを使ったswというメソッドの話をしました。
ソースのところで全然Ruby使ってねぇじゃんw、ておもしろいところになるはずが分かりにくくて自分がコントロールを失ったことは胸にしまっておきます。
あと「~/.autotest」にこんなの書いておくとテスト走るたびに画面いっぱいに結果がでるし音も鳴るしで分かり易くていいですよ。おすすめ。
Autotest.add_hook :ran_command do |at, *args|
require 'socket'
TCPSocket.open('mywindows', 12345) do |s|
s.write(at.results.join.gsub(Regexp.new("(\e\\\[\\d+m|\\\])"), ''))
end
end
主催してくださった@jugyoさんと会場を提供していただいた(株)万葉さんありがとうございました!またおじゃまします。
Instagramは簡単に写真がいじれて楽しいんですが、iPhoneアプリで一覧出来るものがPCのブラウザで出来なくて、なんとなく歯がゆい思いをしてました。(それがサービスの方針のようなので当然といえば当然ですが。)
しかし、せめて自分の撮ったものだけでも手元に持っておきたいなぁ、と。
そんなことを考えながらググっていたところ、will_paginateのmislavさんがAPIを作られていたのを見つけたので、早速使わせていただいてバックアップをとりました。
せっかくなのでコードを張っておきます。
続きを読む…