ruby

Capistrano 3への手引き

Capistrano、便利ですよね。capistrano/capistrano最近メジャーバージョンアップがあったのですが、使い方、というかスクリプトの書き方やお作法が変わり、「Capistrano 3にアップデートしたはいいけど全然動かなくてどうなってんだ」という流れはもはやお約…

Rubyにpackage_privateを導入しようとしたら

Rubyのメソッドの可視性はpublic, protected, privateの3種類です。そこに同一パッケージ(イコール同一gem?)からのみ呼べるpackage_privateを導入してみましょう。結論から言うと断念しました。以下のような場合は簡単です。 class String def nya "#{sel…

Rubyで任意のメソッドの呼び出しを記録するgemを作った

タイトルの通り。 takkkun/peeek · GitHub インストールは: $ gem install peeek で。処理としては対象のメソッドを呼び出し記録用のメソッドで包んでいるだけです。使い方はREADME.mdなりをご覧ください。が、一部書き漏らしていることがあり、それをここに…

autotest-twitterでブヒる

最近とあるgemを書きながら付随するgemを書いてて優先すべきそれが中々進まない昨今ですこんばんは。で、恥ずかしながらテストファーストってあんまりやったことなくて、今それを実践しながらの開発をしています。使っているツールはRSpecなんですが、コマン…

単数形/複数形の変換ルールを独自に定義する

必要に迫られたので探してました. 案の定用意されたメソッドで好き勝手できるようになってました.Rails御用達のActiveSupportの場合. require 'active_support' require 'active_support/inflector' # Railsは自動で取り込んでくれるだろうけど, ActiveSuppo…

hetemlにRubyGemsをインストールする

"いざhetemlにRubyGemsをインストールしようとしたら, すんなりとインストールされず, なんてこったい"を2回繰り返してしまったので, 3度目がないようにメモ. RubyGemsのインストール先ディレクトリを作成 当然/usr/localとかには入れられないので, ホーム配…

シェルライクなTwitterクライアントをざっくり作ってみた

昨日Twitterでシェルっぽい感じのTwitterクライアントあったらおもしろくない? とか言っていて, なんか楽しそうだったのでざっくり作ってみました.使い方はこんな感じ. $ ruby twsh.rb -u your_twitter_id -p password twsh% echo "はろー twsh.rb" twsh% ls…

Twitterのしつこいフェ○アイコンを自動でブロックするサービスを作ったよ

こちらでーす.ふぇらふぇらほいほい名前に関してはいろいろありますが, とりあえずBritney Fuckedのせいにしておいてください. あ, ごめんなさいすみません, あ, あ. 悪ふざけです.使い方はOAuthの方で許可していただければそれだけでOKです. 詳しいコトはふ…

とりあえずRackのミドルウェアとして実装すればいいんじゃない?

最近Rackの上にごくごく簡単なフレームワークをSinatraも使わず組んでいるんですが, ミドルウェアが便利で, 仕組みもごくごく単純でステキだなぁとか思っているからとりあえずメモしておこうと思って久しぶりにブログを書こうとふにゃらららら.仕組みから言…

Rubyで実践 OAuth in Twitter

というコトで前回のエントリに引き続き, OAuthです. 今度はコードを書き, OAuthを用いてTwitterのユーザータイムラインを取得してみようと思います.コードはGitHubの方に置いてみました. 初めてのGitHubわくわくです.OAuth examplesちなみにターミナルから起…

RailsでAmazonの商品を, 署名認証に対応した上で扱う

今朝こんなメールがきました. 【重要】Product Advertising API (旧 AmazonアソシエイトWebサービス)の署名認証に関するお知らせ 内容をサラッと言うと: うちが調べてみたところ, おたくのAWSAccessKeyIDから送られてくるリクエストに電子署名がついていな…

"この世で最も役に立たない関数"をRubyのメソッドで

寝つけないところにこのエントリ. defを使う方法でやってみた. def pointless puts "Turing off myself = #{method :pointless}" undef :pointless end pointless pointless Rubyにもundefがあるなんて初めて知ったぜ. 追記: Pythonでも書いてみた vars = va…

RailsでAmazonの商品を扱う

Amazonの商品はAPIを介して簡単に取得できますが, 取得した情報はキャッシュ目的以外でローカルに格納してはいけない, などの制約がある. なのでどんな風に書けばいいかメモ. あと毎回APIを介していては遅くなるのでmemcachedを使う(キャッシュ目的なのでOK…

before_filterでfalse返しているのにアクションが実行されるコトがある

以前ちょろーっと読んだ本には「before_filterに指定したブロックやメソッドが評価された結果, falseを返した場合, フィルターのチェインはそこで終わるよ!」って書いてあった(と思う).それを信じてやってみたら, なんとチェインが終わらない(そのままアクシ…

should xxxのxxxはMatcher

なるほどー. matches?メソッドを備えたMatcherなるモノを渡せばいいんだなー.

RSpec + Railsで遊んでいたら

OpenIDと同じく前々からやってみたかったBDD. つーコトでRailsのテストをRSpecで試しに書いていたんですが, どうやらレスポンスのステータスコードの判定がRSpecっぽくできないっぽい. describe HogeController, 'のfugaアクションは' do it '直接アクセスし…

RailsでOpenIDを使うときにハマったところ

前々から興味のあったOpenIDをRails上で試そうとしたところ, ちょいちょい動かなかったりしたのでそのメモメモ.とりあえず導入. OpenIDを使うためのRubyGemsとRailsのプラグインを入れる. $ sudo gem install ruby-openid $ script/plugin install open_id_a…

file_columnを使ってアップロードされたファイルを削除すると, marshal_dumpがどうとか言われる

Railsでファイルをアップロードする際によく使われているfile_columnプラグイン. 便利なんですが, とある条件でいやーなエラーが発生するみたいです.その条件は"file_columnを使ったモデルをセッションに格納"し, その状態で"アップロードしたファイルを削除…

form_forでフォームを書く

久しぶりにRailsを触るぜ!いやー, とある時期にRailsは触っていたけども, 最近めっきり触っていないので, Railsの進化にとまどっている次第です. なんせ触っていたのはバージョン1.2.3のだしね. 今はもう2.2.2…… とまどうのは仕方ないけど, ちょいと使ってみ…

ちゃんと平均値を求められていなかった

アホだなー 121ピクセルの色をすべて足して, 100で割っていたようだ. 65,575を超えた値になっていておかしな値になっていただけか……それにしても色の平均ってこうやって求めればいいのかな? もっと効率のいい求め方はないんだろうか.

Flickr APIでごちゃごちゃと

photos * 2みたいな Flickr API(REST)を利用してみたかったからRubyからやってみた. ホントはPerlでやりたかったのだけど, なんかCPANからインストールできなかったのでひとまずRubyで. 後で調べとくか.とりあえずRubyGemsにあるみたいだからそっから入れて…