I learned a lot about OOP and problem-solving by reading the book 
"Design Patterns in Ruby", site here: http://designpatternsinruby.com/

I don't know whether it's the best book on the subject, but it was very 
informative and has helped me simplify solutions in real-life 
situations. It's probably worth adding it to your "to read" list :)

-- 
Posted via http://www.ruby-forum.com/.