Robert C. Martin's Design Principles and Design Patterns have shaped my career. His influential paper has been recently rediscovered, and given the moniker "The SOLID Principles". I'm excited to see the reach of his influence expanding, and happy to have a new group of people to discuss these principles with.

This week on the Alt.NET Podcast, Mike Moore talks with Scott Bellware on the state of Alt.NET. In this discussion, Bellware raises an interesting question. Why SOLID?

Of course, Scott and Mike both know the answer, and the question itself wasn't the point of the conversation. They were expressing concern that most of the people new to the SOLID principles can't articulate why SOLID is good.

While the new moniker gives us a name to invoke to begin a discussion, it unfortunately creates a barrier. Now that we have a mnemonic to help us remember the 5 principles, we can list them without reading the original paper. But that paper starts by answering the fundamental question, "Why?" Why does software go bad? Why does software rot?

I won't go through the reasons here. I cannot improve upon Uncle Bob's work. Instead, I encourage you to please click on the link above, print out the paper, and read it slowly. It may change your career, the same way it changed mine.

One Response to “Why SOLID?”

  1. Will Says:

    Excellent post. I picked up the paper and took some time yesterday afternoon and this morning to read through it. I touched on these in grad school a few years ago and they have been simmering in my mind since then. I am starting to get to the point where I can look at an existing architecture and its design/code and begin to see how it would benefit from the SOLID principles.

Leave a Reply

You must be logged in to post a comment.