tealeaft intro to oop with ruby - http://www.gotealeaf.com/books/oo_ruby