I first came across Sandy Metz in this video:
If you are interested in Object Oriented design you will enjoy this. She is a wonderful speaker, and fun to listen to. Even if you don't agree with (or understand) some of the concepts, I promise that you will enjoy listening to it. Since then Sandy has come out with a wonderful new book which I highly recommend: Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby Series). You should definitely take a look at it. I won't even attempt to summarize it but I really love her writing and how she expresses herself. The writing here is a cut above all the other techie books I've read recently. I'd go as far as saying that it's "literate" … whatever that means, exactly!
The book starts with a wonderful expression of "purpose" as an engineer thinks of it:
"We want to do our best work, and we want the work we do to have meaning. And all else being equal, we prefer to enjoy ourselves along the way."
is that not just perfect?