Today’s ADDcast begins with this outrageous claim “C++ is the best object-oriented language ever, given its design philosophy.” and just gets weirder from there. Pat and I have both been reading Object Thinking by David West and we spend a good time chatting about object-oriented analysis, design and programming in terms of formalist philosophy. We also talk about something wonderful with a horrible name: hermeneutics. Along the way we discuss mental health, Attention Deficit Disorder (the real actual thing), and the design of beer-management systems.
“What are the two hardest problems in computer science?” – Pat asked Dave this question, but forgot to deliver the punchline after Dave proclaimed, “Getting dates with women, and I’m going with that twice.” Leave a comment below, and we’ll send our favorite a copy of Exceptional Ruby by Avdi Grimm. The winner will be announced in the next episode.
- Get your awesome MINASWAN shirt and more sweet geek gear from RubyThreads
- Here is the music box in the opening credits.
- Object Thinking by David West – Pat & David have both been reading this book, and we discuss thoughts from it at various points throughout the podcast. (20:40)
- Dave boldly stated: “C++ is the best object-oriented programming language ever, given its philosophy.” A minute later he was explaining how folks with ADD have hunting instincts in a world dominated by farming behavior. He cites ADD: A Different Perception as a useful resource for understanding ADD. (21:50)
- Driven to Distraction – The Bible of ADD books, with an important but boring section that even non-ADD folks find dry. (25:21)
- We pontificate about how Erlang’s messaging patterns are OOish in nature. Pat brings up Alan Kay’s mailing list post stating “the big idea is messaging.” (32:00)
- Streamlined Object Modeling – Pat cites this book as a good reference for collaboration patterns, and how it demonstrates the “flipped” nature of object-oriented design. (53:30)
- Dave wonders whether Smalltalk Best Practice Patterns it’s relevant today. Pat thinks it provides a straightforward, systematic approach to crafting code. (1:01:00)
- Pat points to the C2 wiki page on Defensive Programming during a discussion on validating data. (1:02:15)
- Avdi Grimm’s “Confident Code” talk, and his new book, Exceptional Ruby (1:02:30).