Rubyの真偽値を返すメソッドを作るとき

def user_exist?

  user = find_user

  user ? true : false

end

などとやっていることが多かったが、

def user_exist?

  !!find_user

end

という書き方ができることを知った。

これはRubyにおける否定(!)をさらに否定(!)していることになり、結果的に期待した真偽値が返ることになる。

いとじゅんさんの「プロを目指す人のためのRUBY入門」より。

シンボリックリンク

Linux系OSで階層が深いディレクトリをいちいちcdするのがめんどくさい時、 例えばDesktopディレクトリ以下のhogeディレクトリ以下のfugaディレクトリへcdする時、いちいち

$ cd Desktop/hoge/fuga

とやるのがめんどくさい。 のでhomeディレクトリから

$ cd fuga

とやりたい。そんな時はhomeディレクトリで

ln -si Desktop/hoge/fuga/ ~/piyo

とやるだけでok。 ちなみに lnがリンクを貼るコマンド。 -sがシンボリックリンク、-iが同名ファイルがある時の確認。