Thursday, January 3, 2008

Thinking about "Object Thinking"

A few weeks ago a new acquaintance recommended that I read David West's "Object Thinking" book. Now I had thumbed through the book before and had dismissed the book largely because of its strong focus on philosophy and history. I'm a "show me the code" kind of guy after all. I was reluctant to take his advice.

But here was this smart, pragmatic, in-the-trenches guy basically telling me that he wanted to work with people who agreed with this book. The thought of using a book on philosophy and history as a litmus test for knowing if you wanted to work with someone made a strong impression on me so I bought the book, and read through it quickly.

I found the author's perspective on OO interesting and unorthodox. I got to the end of the book and had a lot of questions. I decided to read the book again focusing on deeper comprehension and I'm very glad I did.

The strange thing is that the second reading answered very few of my questions. It did make a lot of things more clear but I still had questions. My questions fall into the following categories:

  • Does "Object Thinking" work in the real world?
  • How would you implement "Object Thinking"? To really understand something, I like seeing it from its inception to its completion. For programming topics that means from concept to code (with apologies to Jesse Liberty). This book covered the concepts very well (all that philosophy, history, and culture stuff) but strayed away from code.
  • Can I just pick and choose some of the authors principles and still reap the benefits? Or do I have to adopt the principles that make me uncomfortable?
Having questions after reading a book is not necessarily a bad thing. In fact that 's why I'm finally blogging after who knows how many years of putting it off.

My goal is to try to approach one or more simple projects using the "Object Thinking" book as my guide. I'd like to document that process on this blog.

No comments: