rescueしたい例外を配列で指定

begin raise ArgumentError rescue ArgumentError, NoMethodError puts $!.class.name end 出力結果 ArgumentErrorRubyではこんな風にrescueには複数の例外のクラスを記述できるけど、このrescueしたい例外クラス群を配列で指定したい。まずは、rescue以後を…

SVNのブランチをローカルのgitでチェックアウト

git-svn clone http://xxxx.xxxx/foo -T trunk -b branches -t tagsって感じでチェックアウトしてあるときに、リモートのブランチは git branch -rで確認できて、この中のブランチhogeをチェックアウトしたいときは、 git checkout -b local-hoge hogeで、lo…

EC2 Singapore のリージョン

aws

> ec2 = RightAws::Ec2.new(`cat ~/.ec2/access_key`, `cat ~/.ec2/secret_access_key`) > ec2.describe_regions => ["eu-west-1", "us-east-1", "us-west-1", "ap-southeast-1"]ap-southeast-1 だそうです。 http://aws.amazon.com/ec2/#pricing によるとシ…

禁煙マイルストーンをGoogleカレンダーに登録するスクリプト

Googleカレンダーの「繰り返し」を使ってイベントを登録すると、禁煙してから何ヶ月とか何年とか分からなくなっちゃうので、nヶ月、n年が分かるように予定を登録するスクリプトを書きました。 禁煙100年達成まで登録してみましたw

禁煙プログラマ

今朝、禁煙しました。喫煙者にとってこの言葉を言うことは勇気がいるものです。僕もこれを宣言するまでに長いこと時間をかけました。僕は約17年間の喫煙者でした。最初はセブンスターでしたが、17年のほとんどはロングピースを吸ってました。wikipedia:ピー…

みんなで使うrvm

rvmって~/.rvmにインストールして使うもんだって思ってたら、別のところに入れることもできるんだって! http://rvm.beginrescueend.com/workflow/rvmrc/あとでUbuntu9.10とかにいれて試してみようっと

rvmの環境を作り直す。

rvmの環境になぜかrootが作ったディレクトリができてやがってむきーとなってインストールしなおす。後悔はしてない。元々訳も分からずインストールしてしちゃってたし。http://rvm.beginrescueend.com/rvm/install/でオススメされている方法でインストールし…

ec2-metadata 0.2.1 リリース

先日リリースした0.2.0ですが、コマンドが実は実行できていなかったので、修正してリリースしました。 http://github.com/akm/ec2-metadata

schema_comments 0.1.4 リリース

昨日密かにリリースしていた0.1.3ですが、有り難いことに速攻バグ報告( http://d.hatena.ne.jp/akm/20091213#c1271134505 )を頂きまして、修正してリリースしました。 http://github.com/akm/schema_commentsですが、ちょっと現象に確証を持てないので、報告…

ec2-metadata 0.2.0

ec2-metadata の 0.2.0 をリリースしました。 http://github.com/akm/ec2-metadata インストール $ [sudo] gem install ec2-metadata 使い方簡単 このライブラリを使うとEC2のインスタンス上で、そのインスタンスのメタデータにアクセスすることができます。…

[mac] rabbitmq-serverをインストール

コマンドを忘れそうなのでメモ $ sudo port install rabbitmq-server ---> Computing dependencies for rabbitmq-server ---> Fetching rabbitmq-server ---> Attempting to fetch rabbitmq-server-1.7.2.tar.gz from http://distfiles.macports.org/rabbitm…

4スクリーン

mac

我が家には20インチのモニタが2台あったのですがテレビを買う気がなかったので、片方のDELLの2001FPというモニタを、15年もののVHSのビデオデッキをチューナーにしてテレビを見ていました。 http://supportapj.dell.com/support/edocs/monitors/2001fp/Ja/a…

sshdの起動

mac

[システム環境設定]-[共有]で[リモートログイン]にチェックするだけ。使ったことがなければ ~/.ssh/authorized_keysがないので、 $ cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keysとかして作っておくのを忘れずに。

確定申告完了

毎年のことだけど毎年面倒くさい。でも去年よりはスムーズにできたと思う。とりあえずひと段落。

eigenclass

id:taigouさんとの話で「特異クラス」という単語が出てきていますが、yuguiさんの説明によるとこんな感じ。 特異クラス 特定のオブジェクトだけ、他の同輩たちには無い特別なメソッドを持たせたいと思ったらどうするだろう。特異メソッドとは要するにそうい…

SubversionからGitへの移行をオススメする7つの理由

1. Subversionと連携できる Subversionのtrunkだけでなくbranches, tagsもちゃんとローカルのGitリポジトリへ同期できます。 http://sourceforge.jp/magazine/09/03/26/0834222実際僕はいくつものプロジェクトで、チームのリポジトリがSubversionであっても…

今度こそinstance_evalとmodule_evalを理解してもらった

ような気がするのでメモ。「instance_evalとmodule_evalを理解」というのは特異メソッド、インスタンスメソッドの違いを理解して、 必要に応じてinstance_evalとmodule_evalを使い分けられる、ということかと思います。なので、ゴールとしては、 block = Pro…

Thomasは本当いい奴だよ

JRubyのThomasがrubeusのMLメールをくれました。 http://groups.google.com/group/rubeus/browse_thread/thread/2cefe62df457b8dbJRuby core developerであるThomasが、ちょーマイナーなライブラリについてメールをくれるなんて・・・。内容は、もうJRuby1.3…

irbで調べるObject, Module, Classの関係

RubyのObject, Module, Classの関係と特異メソッドとインスタンスメソッドの話でメンバーを混乱に陥れたので補足しておきます。 継承関係 まずは、irbでクラスの継承関係を調べてみましょう。 Class.superclass #=> Module Module.superclass #=> Object Obj…

Railsのプラグインを作るのに一番やるべきこと

昨日はテクニック中心の話になっちゃってたけど、一番やるべきことを書いてなかった。RailsやRubyに限った話じゃないけど、何かを拡張するものを作るなら、その対象のソースコードを読むこと。

モジュールの基礎

Railsのプラグインを作る上で、Rubyの基本的なところがやっぱり重要なので、その辺もまとめておきます。 Module#included module Hoge def foo_with_hoge foo_without_hoge + "with HOGE" end end というモジュールがあって、 class Foo include Hoge def fo…

Railsのプラグインを作る基礎テク

developmentモードとproductionモード 今日チームのメンバーに聞かれて気付いたことですが、developmentモードが便利過ぎるからか、リクエストが来るたびにコントローラのクラスがロードされるように勘違いする人もいるみたいです。プラグインを作るときには…

復旧までのログ

mac

新MacでまだEMobileの設定をしてないのに、新幹線に乗っちゃったのでまとめておく。 なにはともあれ XCodeをInstallDiscからインストール MacPortsをダウンロード&インストール mysqlをインストール $ sudo port install mysql5 +server $ sudo port install…

MacBookPro13インチげっとー

mac

みなさん新しいパソコンを買うときはどうやって自分を納得させますか?新しいのが出るまで待ったり、お金が貯まるまで待ったり、衝動に任せたりと、いろいろ理由は付けられますが、僕は今回完璧な理由で買いました。使っていたMacBookPro17インチのHDが壊れ…

CLOMOプレゼン

落ち込んでいても誰にもいいことないので、頭を切り替えて今日のCLOMOのプレゼンモードに。 http://atnd.org/events/2753 アイキューブさん( http://www.i3-systems.com/ )の仕事で作ったclomoをみんなの前でデモする予定。もう散々動かしているから大丈夫だ…

やってもうた

昨日、久しぶりに仕事でやってもうた。実際にやっちまっていたのは数週間前なんだけど、昨日それが発覚。幸いにもめちゃめちゃ大きい失敗ではなかったけど、関係者のみなさんにご迷惑をお掛けしました。本当すみません。やっぱバックアップ重要。

AWS Status RSS

http://status.aws.amazon.com/サイトを立てたら、監視ツールはもちろん重要だけど、監視ツールに現れない情報ってあるよなーって思いました。

schema_comments, selectable_attr, selectable_attr_railsアップデート

schema_comments 0.1.2 rake タスクを実行するとdeprecatetionのwarningが出ていたので修正しました。 http://github.com/akm/schema_comments/tree/0.1.2 selectable_attr 0.3.11 警告などのメッセージをSelectableAttr.loggerを使って出力するようにしまし…

どのdelayed_jobを使うべき?

なんだか変な時間に起きちゃったので、ちょっとメモ。gemで一発で入るものはこれで、最新は1.8.4 http://gems.rubyforge.org/gems/delayed_job サイトはここ http://github.com/collectiveidea/delayed_jobこちらは、capistranoのレシピもあってデーモンで動…

21世紀の最初の10年最後の年

明けましておめでとうございます。 2009年まとめ 2009年は地味だけど仕事が結構充実していた気がします。相変わらずいろんな人にお世話になり、勉強になった一年でした。皆様ありがとうございます。 仕事 2009年からよく使うようになったのがAmazon EC2です…