Programming Ruby : the pragmatic programmers' guide - Thomas, David, 1956- (Pragmatic Bookshelf, 2005)