Uncle Bob Is Right
I'm baffled by the podcast from Jeff and Joel. In many regards, I have had the same reaction as Robert Martin. In our organization we have tried our best to implement SOLID principles. The affect that these principles have had on our ability to produce software is both profound and staggering.
To basically say that things like the Single Responsibility Principle and the Dependency Inversion Principle are "bureaucratic" and that they come from someone who "doesn't write a lot of code" is absurd. It reminds me of a self-convinced teenager who cannot be taught because he knows everything already.
It is said that humility is the mother of all virtues--courage is the father. Humility in developing software facilitates our growth. Only when I admitted to myself that there were recurring problems in some of my designs did I become open to accepting other points of view--especially Robert Martin.
Granted, Joel's online personality seems to be abrasive on purpose, which causes people to take notice of him. Perhaps this most recent backlash from the blogosphere is the best thing that has happened to him in a while because it drums up attention and thus business for his software. Personally, it's not the type of attention I would want for my company.
I am thankful for people like Robert Martin, Kent Beck, Martin Fowler, Eric Evans, among others who share their learning with the community such that we can all grow thereby and move forward in significant ways as an industry. Too many think software development is a job--a paycheck. It's the mentors that help us view it in a correct light--as a craft--one to be mastered. "And the end of all our wanderings will be to arrive where we started and know the place for the first time."