Programming Ruby : the pragmatic programmers' guide. - Thomas, Dave; Fowler, Chad; Hunt, Andy (The pragmatic bookshelf, 2005)